簡體   English   中英

電子在主進程中需要node_modules:錯誤:找不到模塊'linvodb3'

[英]Electron require node_modules in main process: Error: Cannot find module ‘linvodb3’

對於angular2 / electron學習應用程序,我使用LinvoDB基於angular2-electron-starter種子進行持久性數據存儲,該種子帶有兩個package.json,一個在root中,一個在root / electron中。 成功打包后,app.exe會引發以下錯誤:

主流程中發生JavaScript錯誤

未捕獲的異常:

錯誤:找不到模塊“ linvodb3”

到目前為止,我嘗試了:

  • 在/和/ electron中安裝linvodb3(npm install linvodb3 --save)
  • 使用--build-from-source安裝linvodb3
  • 在兩個目錄中都使用電子重建
  • apm安裝
  • 建議在類似問題上多次卸載和安裝各種軟件包。

  • var LinvoDB = require('linvodb3'); 在相應的模塊和main.js中

  • const LinvoDB = require('electron')。remote.require('linvodb3');
  • var LinvoDB = require('linvodb3'); 在index.html中類似於jQuery問題。

我唯一無法嘗試讀取的內容是手動設置NODE_PATH,因為找不到指定位置的文件。

正如@JensHabegger所建議的那樣,可以通過將node_modules從/ electron子文件夾復制到/ dist來解決最初的問題,這是通過/package.json中的腳本來完成的。

找不到的leveldown lib的更深層問題無法通過電子重建解決,而是通過/electron/package.json中的安裝后腳本解決:

"scripts": {
    "start": "electron .",
    "postinstall": "cd node_modules/leveldown && node-gyp rebuild --target=1.4.8 --arch=x64 --dist-url=https://atom.io/download/atom-shell"
  },

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM