electron 升级 v22 遇到问题

Electron 漏洞
https://mp.weixin.qq.com/s/5LpSJb_5uV8EIDOl3fz9Tw

在这里插入图片描述
由于 23以上不在支持win 7 8 8.1
在这里插入图片描述
所以我选择安装 v22.3.24

electron 22.3.24
node-sass 6.0.1
sass-loader 10.4.1
electron 升级 v22 遇到问题_第1张图片
对应的版本
electron 升级 v22 遇到问题_第2张图片

npm i [email protected] --sass_binary_site=https://npm.taobao.org/mirrors/node-sass/
npm i -D [email protected]

以下是我开发中遇到的问题

  1. const fs = require(“fs”) 报错未定义requir ncaught ReferenceError: require is not defined
win = new BrowserWindow({
	webPreferences:{
		nodeIntegration:true, 
		contextIsolation:false 
	}
})
  1. Syntax Error: TypeError: this.getOptions is not a function
    开始爬坑的时候 node node-sass sass-loader 三个的版本不匹配
    最终选择我上面用的这三个版本号 就可以

3.Syntax Error: Error: Node Sass version 9.0.0 is incompatible with ^4.0.0.
node-sass 的版本太高需要降级

  1. Cannot read properties of undefined (reading ‘app’) at new ElectronStore
npm i electron-store@latest

另外需要更改的代码

// 你的入口文件 main.js
protocol.registerSchemesAsPrivileged([
  { scheme: "app", privileges: { standard: true, secure: true } },
]);

function createWindow() {
win = new BrowserWindow({
    width: 650,
    height: 550,
    webPreferences: {
      contextIsolation: false,
      webSecurity: true,
      nodeIntegration: true,
    },
  });
}


package.json // 不再支持 main 所以换成 exports

"exports": {
    ".": "./main.js"
  },

你可能感兴趣的:(electron,rust,javascript)