Electron的踩坑之旅-node篇

185 阅读1分钟

越用electron越感觉自己懂得很少,他需要对node,chrome,electron这三方面的API都很熟悉,才玩的转。

谷歌的API

electron的API

node的API

1.先设置几个快捷键,要不刷新不方便

位置:主进程main.js中

  const { globalShortcut } = require('electron')//一定注意先引入才能生效
// 注册快捷键 "CommandOrControl+R" 来刷新页面

//刷新
globalShortcut.register('CommandOrControl+R', () => {
  // 发送 "reload" 渲染进程事件来刷新页面
  mainWindow.send('reload')
})
//最大化
globalShortcut.register('CommandOrControl+M',()=>{
  mainWindow.maximize()
})
//最小化
globalShortcut.register('CommandOrControl+T',()=>{
  mainWindow.unmaximize()
})
//关闭
globalShortcut.register('CommandOrControl+H',()=>{
  mainWindow.close()
})

2.fs模块

可以控制fs模块创建写出文件

位置:main.js主进程

    webPreferences: {
      contextIsolation: false,
      nodeIntegration: true,
    }

位置 渲染进程(页面)

import fs from 'fs'
fs.writeFile('input.txt','用fs操作本地系统写出了文档',(err) => {
    if(err){
        console.log(err);
    } else {
        console.log('写入完毕')
    }
})                                                          //怎么说呢,亲测可用

3.dialog模块

可以打开弹框,可以用来打开文件,保存文件,读取文件

// 通过remote拿到
const {dialog} = require("@electron/remote").dialog
      setTimeout(()=>{
        dialog,showOpenDialog({
         properties:['openFile',"multiSelections"]
        })
      },2000)//效果就是2秒之后打开一个弹框可以选择文件