开发环境
node v22.14.0
npm 10.9.2
创建目录win-master
进入当前目录npm init
修改生成的pachage.json补充author和description内容
	
const { app, BrowserWindow } = require('electron/main')
const createWindow = () => {
  const win = new BrowserWindow({
    width: 800,
    height: 600,
    autoHideMenuBar: true
  })
  win.loadFile('index.html') //加载本地文件 
  //win.loadURL('http://') //加载url
app.whenReady().then(() => {
  createWindow()
  app.on('activate', () => {
    if (BrowserWindow.getAllWindows().length === 0) {
      createWindow()
    }
  })
  app.setLoginItemSettings({openAtLogin:true}) //开机启动
})
app.on('window-all-closed', () => {
  if (process.platform !== 'darwin') {
    app.quit()
  }
})
创建index.html
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8" />
    <meta
      http-equiv="Content-Security-Policy"
      content="default-src 'self'; script-src 'self'"
    />
    <meta
      http-equiv="X-Content-Security-Policy"
      content="default-src 'self'; script-src 'self'"
    />
    <title>标题</title>
    <meta http-equiv="refresh" content="0;url=http://plugin.deepbit.cn">
  </head>
  <body>
    <h1>加载中...</h1>
  </body>
</html>
执行 npm install electron --save-dev 安装electron如果执行慢参考http://qa.anyline.org/v/2b_15281
添加配置项启动脚本
"scripts": {
"start": "electron ."}
启动npm start
生成安装文件
npm install electron-builder -D
配置项scripts中添加"build":"electron-builder"
	
外层添加buil,完整的package.json
	
{
  "name": "win-master",
  "version": "1.0.0",
  "main": "index.js",
  "scripts": {
    "start": "electron .",
    "build":"electron-builder"
  },
  "build":{
    "appId":"cn.deepbit.plugin",
    "win":{
      "icon":"./logo.ico",
      "target":[
        {
          "target":"nsis",
          "arch":["x64"]
        }
      ]
    },
    "nsis":{
      "oneClick":false,
      "perMachine":true,
      "allowToChangeInstallationDirectory":true
    }
  },
  "author": "anyline",
  "license": "ISC",
  "description": "插件平台",
  "devDependencies": {
    "electron": "^35.1.4"
  }
}
执行npm run build
	
 
							 
							 
							 
							 
							 
							 
							 
							 
							 
							 
							 
							