簡體   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