使用Electron运行Angular App的某些路线上的错误

时间:2018-12-05 18:51:48

标签: angular electron

我有一个Angular应用,正在尝试与Electron打包。该应用程序可在Electron中运行,但当我路由至任何形式时,路由变为空白,而开发工具则向我显示此错误。

ERROR ReferenceError: $ is not defined
at new e (main.c8d5fcf078fdd8e78633.js:1)
at Ts (main.c8d5fcf078fdd8e78633.js:1)
at ws (main.c8d5fcf078fdd8e78633.js:1)
at Js (main.c8d5fcf078fdd8e78633.js:1)
at cl (main.c8d5fcf078fdd8e78633.js:1)
at ll (main.c8d5fcf078fdd8e78633.js:1)
at Js (main.c8d5fcf078fdd8e78633.js:1)
at Object.Gs [as createEmbeddedView] (main.c8d5fcf078fdd8e78633.js:1)
at t.createEmbeddedView (main.c8d5fcf078fdd8e78633.js:1)
at e.createEmbeddedView (main.c8d5fcf078fdd8e78633.js:1)

我不确定从哪里开始,因为这是缩略代码。我正在考虑从缩小版本的应用程序开始,以查看是否可以查明问题所在。

解决此问题的最佳方法是什么?


好吧,我知道了。我正在看Anuj Nair's JSCamp的谈话,而他正在处理安全问题。我将此添加到了index.js文件中。

webPreferences: {   
nodeIntegration: false, 
preload: path.join(__dirname, 'preload.js')
},  

然后我用以下代码创建了一个preload.js文件。

var _process = process; 
process.once('loaded', function () { 
global.process = _process;
}); 
const fs = require('fs') 
global.desktop = { 
files: () => fs.readdirSync(__dirname) 
}

0 个答案:

没有答案