1.安装和配置 Electron
-- 未经授权禁止转载 --

学习之前请确保已经学习了 “1小时学会Node.js

本套课程配套视频 “1小时学会ESM规范Electron

Electron

     是一个使用 JS、HTML 和 CSS 构建桌面应用程序的跨平台框架


Electron 官方文档

     https://www.electronjs.org/zh/docs/latest/


Electron API

     https://www.electronjs.org/zh/docs/latest/api/app


初始化配置文件 package.json

     npm init -y


     {

       "type": "module",

       "name": "demo",

       "version": "1.0.0",

       "main": "main.js",

       "scripts": {

         "start": "electron ."

       },

       "keywords": [],

       "author": "",

       "license": "ISC",

       "description": ""

     }


项目下配置 .npmrc 文件 (electron_mirror 是 Electron 的镜像源)

     electron_mirror=https://npmmirror.com/mirrors/electron/


     注:

     虽然之前通过 npm config set registry https://registry.npmmirror.com/

     已全局配置了淘宝镜像源 (位置: C:\Users\David\.npmrc),

     但某些大型包(如: electron)仍会通过默认的官方源下载,所以需要配置对应镜像源


安装 electron

     npm i electron -D


     注

     -D 表示作为仅在开发时需要的依赖(devDependencies)安装到项目中,

     而不是项目运行时需要的依赖(dependencies)


新建 main.js

  import { app, BrowserWindow } from "electron"

  //创建窗口
  const createWindow = () => {
      const mainWindow = new BrowserWindow({
          width: 1300, //设置窗口宽度(单位:像素)
          height: 750, //设置窗口高度
          icon: "resource/images/code.ico", //设置窗口图标
          autoHideMenuBar:true, //隐藏菜单栏
          //resizable: false, //禁止调整窗口大小
          //x:0, //x表示窗口左上角的水平坐标(单位:像素)
          //y:0, //y表示窗口左上角的垂直坐标
      })

      mainWindow.loadURL("https://www.dengruicode.com") //加载指定的 url

      //当尝试打开新窗口时, 阻止默认行为, 在当前窗口加载 url
      mainWindow.webContents.setWindowOpenHandler(details =>{
          mainWindow.loadURL(details.url)
          return { action: 'deny' } //阻止默认行为
      })
  }

  //当应用准备就绪后创建窗口
  app.whenReady().then(() => {
      createWindow()
  })

运行项目

     npm start