我已经遇到这个问题好几天了,一直没能找到解决办法。根据我的研究,这似乎是一个已知问题,但所提供的修复程序均不适用于我的情况。
我试过:
npm rebuild
npm install grpc --runtime=electron --target=1.7.6
我尝试的另一件事是将其添加到 package.json 文件中:
"resolutions": {
"grpc": "^1.12.0"
},
此外,我尝试过上下更改 electron、grpc、firebase 的版本。
我在控制台上不断收到的错误是:
E:\GitHub\Portfolio-Manager\node_modules\grpc\src\grpc_extension.js:53 Uncaught Error: Failed to load gRPC binary module because it was not installed for the current system
Expected directory: electron-v1.7-win32-x64-unknown
Found: [node-v59-win32-x64-unknown]
This problem can often be fixed by running "npm rebuild" on the current system
Original error: Cannot find module 'E:\GitHub\Portfolio-Manager\node_modules\grpc\src\node\extension_binary\electron-v1.7-win32-x64-unknown\grpc_node.node'
at Object.<anonymous> (E:\GitHub\Portfolio-Manager\node_modules\grpc\src\grpc_extension.js:53)
at Object.<anonymous> (E:\GitHub\Portfolio-Manager\node_modules\grpc\src\grpc_extension.js:63)
at Module._compile (VM129 module.js:571)
at Object.Module._extensions..js (VM129 module.js:580)
at Module.load (VM129 module.js:488)
at tryModuleLoad (VM129 module.js:447)
at Function.Module._load (VM129 module.js:439)
at Module.require (VM129 module.js:498)
at require (VM130 module.js:20)
at Object.<anonymous> (E:\GitHub\Portfolio-Manager\node_modules\grpc\src\client_interceptors.js:145)
当前依赖项:
"dependencies": {
"axios": "^0.16.1",
"firebase": "^5.3.1",
"flexboxgrid": "^6.3.1",
"grpc": "^1.12",
"nedb": "^1.8.0",
"numeral": "^2.0.6",
"vue": "^2.3.3",
"vue-electron": "^1.0.6",
"vue-router": "^3.0.1",
"vue2-scrollbar": "0.0.3"
},
如有任何帮助,我们将不胜感激。
最佳答案
经过一些研究,我发现了一个命令,可以正确地重建所需的二进制文件。
npm rebuild --runtime=electron --target=1.8.4 --disturl=https://atom.io/download/electron
在这篇文章中,electron 1.8.* 应该适用于此。
关于node.js - 问题将 Firebase 添加到 Electron 项目,gRPC 依赖问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51717602/