首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Ionic4中使用Javascript API

在Ionic4中使用Javascript API
EN

Stack Overflow用户
提问于 2019-08-06 09:25:19
回答 2查看 328关注 0票数 0

我需要在Ionic4项目中使用Javascript API (https://github.com/justadudewhohacks/face-api.js)。为此,我需要将lib face-api.min.js导入到我的文件夹中。但据我所知,Ionic只适用于Typescripts文件...我找过医生,但没有找到...

以下是我在浏览器中使用的代码,我需要在Ionic项目中使用:

代码语言:javascript
复制
const video = document.getElementById('video')

Promise.all([
  faceapi.nets.tinyFaceDetector.loadFromUri('/models'),
  faceapi.nets.faceLandmark68Net.loadFromUri('/models'),
  faceapi.nets.faceRecognitionNet.loadFromUri('/models'),
  faceapi.nets.faceExpressionNet.loadFromUri('/models')
]).then(startVideo)

function startVideo() {
  navigator.getUserMedia(
    { video: {} },
    stream => video.srcObject = stream,
    err => console.error(err)
  )
}

video.addEventListener('play', () => {
  const canvas = faceapi.createCanvasFromMedia(video)
  document.body.append(canvas)
  const displaySize = { width: video.width, height: video.height }
  faceapi.matchDimensions(canvas, displaySize)
  setInterval(async () => {
    const detections = await faceapi.detectAllFaces(video, new faceapi.TinyFaceDetectorOptions()).withFaceLandmarks().withFaceExpressions()
    const resizedDetections = faceapi.resizeResults(detections, displaySize)
    canvas.getContext('2d').clearRect(0, 0, canvas.width, canvas.height)
    faceapi.draw.drawDetections(canvas, resizedDetections)
  }, 100)

})

它的语法与Typescript相同(除了document.GetElementById,但我们会适应),但只有在我可以调用API文件时才能工作。

有人知道如何在Ionic4项目中实现JS文件吗?

EN

回答 2

Stack Overflow用户

发布于 2019-11-13 18:58:06

有一个用于加载异步JavaScript文件的库。https://www.npmjs.com/package/scriptjs

安装程序包:

代码语言:javascript
复制
npm i scriptjs

然后在任何地方使用它,如下所示:

代码语言:javascript
复制
import { get } from 'scriptjs';

ngOnInit() {

    get("assets/js/searchEmp.js", () => {
        getSerchInspContext = this;
        loadSearchEmp();
    });}

您可以简单地使用jquery方法来附加或删除标头中的脚本标记。

要添加.js文件,请在页面加载时调用以下代码:

代码语言:javascript
复制
$('head').append('<script async src="assets/js/search.js"></script>');

删除.js文件:

代码语言:javascript
复制
document.querySelector('script[src="assets/js/search.js"]').remove();
票数 0
EN

Stack Overflow用户

发布于 2021-11-17 05:20:19

我看到了一个示例github存储库,您可以查看它的引用:

Ionic4-ngx-face-api-js

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57367778

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档