繁体   English   中英

OpenCV.js 不工作 vue.js (electron-builder)

[英]OpenCV.js is not working vue.js (electron-builder)

我正在使用 electron 和 vuejs(我正在使用 vue-cli-plugin-electron-builder)进行一个项目,我需要实时人脸检测系统,到目前为止最快和最有效的解决方案是 OpenCV.js(我已经完成了我的研究).

我一直面临的问题是根据 OpenCV.js 文档,我们需要将脚本标记添加到 html 文件中,例如,

<script async src="https://docs.opencv.org/master/opencv.js" onload="onOpenCvReady()" type="text/javascript"></script>

我已经测试过它,只有当我在 electron window 中关闭 nodeIntegration 时它才能正常工作。但这是不可能的,因为 electron-builder 插件只有在打开 nodeIntegrations 时才能工作。

new BrowserWindow({
    webPreferences: {
        nodeIntegration: true // I need this but i also need opencv
                              // but opencv is not working if i turn it off.
    }
})

其次,我应该继续使用 electron 还是转移到 NW.js 我已经注意到 electron.js 的构建大小很大。

首先,下面的说法是不正确的:

electron-builder 插件仅在打开 nodeIntegrations 时才有效。

事实上,默认情况下, nodeIntegrationelectron-builder v2.0中将被禁用。

现在让我们进入正题。 不要使用<script>标签下载任何东西,如果这样做,每次用户打开应用程序时,它都会下载脚本。 您应该做的是在开发期间安装所有节点模块,以便应用程序附带所有内容。

要在 Electron 中使用 opencv,只需安装这个 npm 模块即可。 查看 Electron 中有关如何使用它的示例

如果该模块不适合您,请尝试使用此 npm 模块并在需要时遵循 opencv文档

并回答你关于 NW.js 的问题,这取决于你的需要。 Google 一下 Electron 和 NW.js 之间的区别,然后决定你想为你的应用使用什么。 简而言之,Electron 更强大,更安全,即使该应用程序在驱动器上多占用200mb ,它仍然是一个更好的选择。 此外,谁在乎构建大小是否为400mb 现在不是 2010 年,现在大多数首先要使用您的应用程序的人,最有可能在他们的驱动器上有 0.5 TB 的可用空间。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM