Electron已經發布了5.0正式版,升級后發現原來能運行的代碼報錯提示require is not defined
經查相關資料,原來官方在5.0版本修改了nodeIntegration
的默認值,官方說明如下:
The default values of
nodeIntegration
andwebviewTag
are nowfalse
to improve security.
解決辦法:
修改創建BrowserWindow部分的相關代碼,設置屬性webPreferences.nodeIntegration為 true
let win = new BrowserWindow({ webPreferences: { nodeIntegration: true } })
相關資料:
https://github.com/electron/electron/pull/16235
https://stackoverflow.com/questions/55093700/electron-5-0-0-uncaught-referenceerror-require-is-not-defined