}
图标 效果如下(此时已具备最小化、最大化、恢复以及关闭当前窗口的功能):
二、使用ipcRenderer
和 ipcMain
模块发送消息,让主进程、渲染进程通信;
在渲染进程给主进程发消息,通知主进程我要进行什么操作
注意:
- 在渲染进程中通过
ipcRender
模块给主进程发送信息; - 主进程中接收渲染进程的消息,并调用函数,进行相应的操作。
<span class=“el-icon-minus” @click=“minimizeWin”>
<span class=“el-icon-full-screen” @click=“maximizeWin”>
<span class=“el-icon-close” @click=“closeWin”>
在background.js
文件:中新增如下代码:
async function createWindow() {
createMenu();
// Create the browser window.
win = new BrowserWindow({
width: 1300,
height: 660,
minWidth: 1300,
useContentSize: true,
resizable: true,
frame: false,//通过设置frame的值为false可以隐藏窗口的边框。
// backgroundColor: ‘#DC143C’,
// titleBarStyle: ‘hidden’,
webPreferences: {
webSecurity: false, //Remove cross domain restrictions
nodeIntegration: process.env.ELECTRON_NODE_INTEGRATION,
// eslint-disable-next-line no-undef
preload: ${__static}/preload.js
},
//${__ Static} corresponds to the public directory
// eslint-disable-next-line no-undef
icon: ${__static}/img/icons/logo-64.png
// icon: ${__static}/img/icons/favicon.ico
});
if (process.platform === ‘darwin’) {
// eslint-disable-next-line no-undef
app.dock.setIcon(${__static}/img/icons/logo-512.png
);
}
if (process.env.WEBPACK_DEV_SERVER_URL) {
// Load the url of the dev server if in development mode
await win.loadURL(process.env.WEBPACK_DEV_SERVER_URL);
/* if (!process.env.IS_TEST) win.webContents.openDevTools(); */
} else {
createProtocol(‘app’);
// Load the index.html when not in development
win.loadURL(‘app://./index.html’);
//Detect version updates
// updateHandle(win, feedUrl);
}
win.on(‘closed’, () => {
win = null;
});
globalShortcut.register(‘CommandOrControl+Shift+i’, function () {
win.webContents.openDevTools();
});
// esc,
globalShortcut.register(‘ESC’, function () {
win.unmaximize();
});
// 新增三块 1 2 3; win是 win = new BrowserWindow({…})来的。
// 1. 窗口 最小化
ipcMain.on(‘window-min’,function(){ // 收到渲染进程的窗口最小化操作的通知,并调用窗口最小化函数,执行该操作
win.minimize();
})
// 2. 窗口 最大化、恢复
总结
- 对于框架原理只能说个大概,真的深入某一部分具体的代码和实现方式就只能写出一个框架,许多细节注意不到。
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
-
算法方面还是很薄弱,好在面试官都很和蔼可亲,擅长发现人的美哈哈哈…(最好多刷一刷,不然影响你的工资和成功率???)
-
在投递简历之前,最好通过各种渠道找到公司内部的人,先提前了解业务,也可以帮助后期优秀 offer 的决策。
-
要勇于说不,对于某些 offer 待遇不满意、业务不喜欢,应该相信自己,不要因为当下没有更好的 offer 而投降,一份工作短则一年长则 N 年,为了幸福生活要慎重选择!!!
第一次跳槽十分忐忑不安,和没毕业的时候开始找工作是一样的感受,真的要相信自己,有条不紊的进行。如果有我能帮忙的地方欢迎随时找我,比如简历修改、内推、最起码,可以把烦心事说一说,人嘛都会有苦恼的~
祝大家都有美好的未来,拿下满意的 offer。