Vue使用electron转换项目成桌面应用方法介绍
1、将已有 Vue 项目打包。
2、新建 main.js、package.json 文件
将打包生成的 index.html、js、css、然后再和新建的 main.js、package.json 文件 放至一个目录下。并命令行切换至这个目录。
新建的 main.js 如下:
const { app, BrowserWindow } = require("electron"); // 引入electron let win; let windowConfig = { width: 800, height: 600, }; // 窗口的大小 function createWindow() { win = new BrowserWindow(windowConfig); // 创建一个窗口 win.loadURL(`file://${__dirname}/index.html`); // 加载打包生成的index.html win.webContents.openDevTools(); // 开启调试工具 win.on("close", () => { //回收 BrowserWindow 对象 win = null; }); win.on("resize", () => { win.reload(); }); } app.on("ready", createWindow); app.on("window-all-closed", () => { app.quit(); }); app.on("activate", () => { if (win == null) { createWindow(); } });
新建的 package.json 如下:
{ "name": "demo", "productName": "项目名称", "author": "作者", "version": "1.0.4", "main": "main.js", "description": "项目描述", "scripts": { "pack": "electron-builder --dir", "dist": "electron-builder", "postinstall": "electron-builder install-app-deps" }, "build": { "electronVersion": "1.8.4", "win": { "requestedExecutionLevel": "highestAvailable", "target": [ { "target": "nsis", "arch": [ "x64" ] } ] }, "appId": "demo", "artifactName": "demo-${version}-${arch}.${ext}", "nsis": { "artifactName": "demo-${version}-${arch}.${ext}" }, "extraResources": [ { "from": "./static/xxxx/", "to": "app-server", "filter": [ "**/*" ] } ] }, "dependencies": { "core-js": "^2.4.1", "electron-packager": "^12.1.0", "electron-updater": "^2.22.1" }, "devDependencies": { "electron-forge": "^5.2.4" } }
3、安装包:
yarn install
(报错不用管,能 electron .
运行成功且效果正常就行)
4、运行:
electron .
5、注意事项:
- vue 项目 路由用
hash
模式。 - vue 项目 的 vue.config.js 要配置
publicPath: './'
(因为若不配置,则 electron 文件路径不对)
module.exports = { lintOnSave: false, publicPath: './', css: .... .... }
index.html 中文件路径如以下正确显示:
<link rel="icon" href="favicon.ico" rel="external nofollow" > <title>efficiency-helper</title> <link href="css/chunk-11991773.33db9af5.css" rel="external nofollow" rel="prefetch"> <link href="css/chunk-17ca335a.ad6ca46b.css" rel="external nofollow" rel="prefetch"> <link href="css/chunk-3dde8fae.019eaf8d.css" rel="external nofollow" rel="prefetch"> <link href="css/chunk-4c9aec9b.410cb728.css" rel="external nofollow" rel="prefetch"> <link href="css/chunk-f52405ee.f4abe7d9.css" rel="external nofollow" rel="prefetch">
若不配置 publicPath: './'
则:href=“/css/chunk-17ca335a.ad6ca46b.css” 路径错误。导致应用出现白屏。
到此这篇关于Vue使用electron转换项目成桌面应用方法介绍的文章就介绍到这了,更多相关Vue electron内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
element 结合vue 在表单验证时有值却提示错误的解决办法
这篇文章主要介绍了element 结合vue 在表单验证下,有值却提示错误的解决办法,需要的朋友可以参考下2018-01-01Vue实现在线预览pdf文件功能(利用pdf.js/iframe/embed)
项目要求需要预览pdf文件,网上找了很久,发现pdf.js的效果,这篇文章主要给大家介绍了关于Vue实现在线预览pdf文件功能,主要利用pdf.js/iframe/embed来实现的,需要的朋友可以参考下2021-06-06vuex存储数组(新建,增,删,更新)并存入localstorage定时删除功能实现
这篇文章主要介绍了vuex存储数组(新建,增,删,更新),并存入localstorage定时删除,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2023-04-04Vue 设置axios请求格式为form-data的操作步骤
今天小编就为大家分享一篇Vue 设置axios请求格式为form-data的操作步骤,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2019-10-10electron-vue 运行报错 Object.fromEntries is not a function
Object.fromEntries() 是 ECMAScript 2019 新增的一个静态方法,用于将键值对列表(如数组)转换为对象,如果在当前环境中不支持该方法,可以使用 polyfill 来提供类似功能,接下来通过本文介绍electron-vue 运行报错 Object.fromEntries is not a function的解决方案2023-05-05
最新评论