Electron官网?Build cross-platform desktop apps with JavaScript, HTML, and CSS | Electron
npm init -y
npm i electron -D //?注意!如果报错查看node包是否太高
{
"main": "main.js", //配置程序的入口文件,即为主进程
"scripts": {
"start": "electron ." //配置项目启动脚本
},
}
在终端输入npm run start 启动项目
const { app, BrowserWindow } = require("electron");
const createWindow = () => {
const win = new BrowserWindow({
width: 800, //窗口 宽
height: 600, //窗口 高
});
};
app.whenReady().then(createWindow)
const createWindow = () => {
const win = new BrowserWindow({
width: 800,
height: 600,
});
win.loadURL("https://www.baidu.com/"); //需要加载的网页
};
const createWindow = () => {
const win = new BrowserWindow({
width: 800,
height: 600,
});
win.loadFile('index.html') //引入根目录下的index.html
};
每次更改项目都要重新启动,真是麻烦死了/(ㄒoㄒ)/~~
npm i nodemon -g
//package.json 配置启动方式
"scripts": {
"start": "nodemon --exec electron . --watch ./ --ext .js,.html,.css"
},
重新启动就可以热启动了,very好用!!! ps:会跟自动保存有点冲突,尽量不要用自动保存
方法1:ctrl+shift+i
方法2:
const createWindow = () => {
const win = new BrowserWindow({
width: 800,
height: 600,
});
win.loadFile('index.html')
win.webContents.openDevTools() //打开调试工具
};
方法1:在index.html 配置csp(推荐)
<!-- 配置CSP -->
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; img-src 'self' data:; script-src 'self'; style-src 'self' 'unsafe-inline'">
方法2:在main.js中
const createWindow = () => {
const win = new BrowserWindow({
width: 800,
height: 600,
});
win.loadFile('index.html')
win.webContents.openDevTools()
// 暂时关闭安全警告 (所有的警告都被关闭)
process.env['ELECTRON_DISABLE_SECURITY_WARNINGS'] = 'true'
};