当index.html 中需要node-opcua并且一个名为 Electron Helper 的进程占用了 100% 的 cpu 时,Electron 会冻结。
我在 macOS 10.14.2 上遇到过这个问题,但是一位朋友在 Windows 10 中进行了测试,并且成功了。
来自 package.json
"devDependencies": {
"electron": "^4.0.4"
},
"dependencies": {
"node-opcua": "^0.5.6"
}
主.js
const { app, BrowserWindow } = require('electron')
function createWindow () {
// Create the browser window.
win = new BrowserWindow({ width: 800, height: 600 })
// and load the index.html of the app.
win.loadFile('index.html')
win.webContents.openDevTools()
}
app.on('ready', createWindow)
索引.html
<script>
// Does not work
const opcua = require('node-opcua')
console.log(opcua)
// Works
// const fs = require('fs')
// console.log(fs)
</script>
运行简单代码时,它应该只在控制台中打印 opcua 对象。但是完整的电子进程冻结了。