谷歌商店安卓版下载,安卓手机性能优化软件,湘潭做网站 搜搜磐石网络,国家企业信息信用系统一. 简介
首先#xff0c;介绍下vite和Electron。
Vite是一种新型前端构建工具#xff0c;能够显著提升前端开发体验。Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入Chromium和Node.js到二进制的 Electron 允许您保持一个 JavaScript 代码代码…一. 简介
首先介绍下vite和Electron。
Vite是一种新型前端构建工具能够显著提升前端开发体验。Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入Chromium和Node.js到二进制的 Electron 允许您保持一个 JavaScript 代码代码库并创建 在Windows上运行的跨平台应用 macOS和Linux——不需要本地开发 经验。
当开始想用vue去开发一个桌面应用时首先去搜索下了解到当前如下两种现成方案
electron-vue 该项目集成度较好封装较为完整中文搜索下来文章较多也是该方案可以直接上手去使用。但是问题在于其内置electron的版本太低写文章时看到的版本是2.0.4而最新的electron版本是15.1.2。Vue CLI Plugin Electron Builder 该方案是集成到到vue-cli中使用使用vue add electron-builder后可直接上手免去了基础配置的步骤。但是其只能在vue-cli下使用无法配合vite来使用。
因此若要使用vite和electron还需要自己来配置。 二. 创建一个Vite项目
1. 安装 vite
yarn create vite
2. 创建项目
创建命令如下
yarn create vite your-vue-app-name --template vue
此处创建一个项目名为kuari。
yarn create vite kuari --template vue
3. 进入且运行
进入项目在运行前需要先安装下依赖。
cd kuari
yarn install
yarn dev
在运行命令敲下的一瞬间几乎是已经在运行了不愧是vite。此时按照输出打开地址预览即可看到初始化页面。 至此一个基础的vite项目创建完成。 三. 配置Electron
1. 官方文档
在Electron官网的快速入门文档中有官方给出的利用html、javascript、css来创建一个electron应用的案例viteelectron的方案也借鉴其中。
2. 安装
首先安装electron至vite应用。目前electron的版本为^15.1.2,。
yarn add --dev electron
3. 配置文件
1vite.config.js
import { defineConfig } from vite
import vue from vitejs/plugin-vue
import path from path // 新增// https://vitejs.dev/config/
export default defineConfig({base: path.resolve(__dirname, ./dist/), // 新增plugins: [vue()]
})2main.js
创建一个新的文件main.js需要注意的是该内容中index.html的加载路径跟electron官网给的配置不同。
// main.js// 控制应用生命周期和创建原生浏览器窗口的模组
const { app, BrowserWindow } require(electron)
const path require(path)function createWindow () {// 创建浏览器窗口const mainWindow new BrowserWindow({width: 800,height: 600,webPreferences: {preload: path.join(__dirname, preload.js)}})// 加载 index.htmlmainWindow.loadFile(dist/index.html) // 此处跟electron官网路径不同需要注意// 打开开发工具// mainWindow.webContents.openDevTools()
}// 这段程序将会在 Electron 结束初始化
// 和创建浏览器窗口的时候调用
// 部分 API 在 ready 事件触发后才能使用。
app.whenReady().then(() {createWindow()app.on(activate, function () {// 通常在 macOS 上当点击 dock 中的应用程序图标时如果没有其他// 打开的窗口那么程序会重新创建一个窗口。if (BrowserWindow.getAllWindows().length 0) createWindow()})
})// 除了 macOS 外当所有窗口都被关闭的时候退出程序。 因此通常对程序和它们在
// 任务栏上的图标来说应当保持活跃状态直到用户使用 Cmd Q 退出。
app.on(window-all-closed, function () {if (process.platform ! darwin) app.quit()
})// 在这个文件中你可以包含应用程序剩余的所有部分的代码
// 也可以拆分成几个文件然后用 require 导入。3preload.js
创建一个新的文件preload.js。
// preload.js// 所有Node.js API都可以在预加载过程中使用。
// 它拥有与Chrome扩展一样的沙盒。
window.addEventListener(DOMContentLoaded, () {const replaceText (selector, text) {const element document.getElementById(selector)if (element) element.innerText text}for (const dependency of [chrome, node, electron]) {replaceText(${dependency}-version, process.versions[dependency])}
})4package.json
为了确保能够运行相关electron的命令需要修改package.json文件。
首先需要去设置main属性electron默认会去在开始时寻找项目根目录下的index.js文件此处我们使用的是main.js所以需要去定义下。
// package.json{name: kuari,version: 0.0.0,main: main.js, // 新增scripts: {dev: vite,build: vite build,serve: vite preview},dependencies: {vue: ^3.2.16},devDependencies: {vitejs/plugin-vue: ^1.9.3,electron: ^15.1.2,vite: ^2.6.4}
}
最后我们需要新增electron的运行命令。
// package.json{name: kuari,version: 0.0.0,main: main.js,scripts: {dev: vite,build: vite build,serve: vite preview,electron:serve: electron . // 新增},dependencies: {vue: ^3.2.16},devDependencies: {vitejs/plugin-vue: ^1.9.3,electron: ^15.1.2,vite: ^2.6.4}
}
四. 运行
直接在终端输入如下命令
yarn electron:serve
接着我们就可以看到我们桌面应用就出来咯 五. 最后
之前做项目一直用的Vue CLI Plugin Electron Builder这次有个项目先用electron开发一下推一波看看后期看情况swift重新开发一个mac的桌面应用。也刚好尝尝鲜一直没有机会试试vite。
electron这个东东确实很方便就是打包出来的应用体积太大真的是硬伤啊。这次目标人群首先是windows用户所以上electron吧