《electron封装vue为桌面应用》

需要node版本>=10

  1. vue create test,创建名为test的vue脚手架
    这个命令需要CLI 3,所以先通过npm uninstall -g vue-cli卸载之前的vue-cli,再通过npm install -g @vue/cli重新安装
  2. cd test
  3. vue add electron-builderyarn add vue-cli-plugin-electron-builder -D --tilde
  4. 安装路由,npm install vue-router --save-dev
  5. 安装element-ui,npm i element-ui -S
  • 使用element-ui需要在main.js中写
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'

Vue.use(ElementUI);
  1. 安装依赖,npm install
  • 如果安装失败,可能是下载源的问题,换成淘宝源
    npm config set electron_mirror "https://npm.taobao.org/mirrors/electron/"
  1. 安装SASS加载器,cnpm install sass-loader node-sass --save-dev
  2. 调试。npm run electron:serve,如果很慢的话,可以注释background.js中的
  if (isDevelopment && !process.env.IS_TEST) {
    // Install Vue Devtools
    try {
      await installExtension(VUEJS_DEVTOOLS)
    } catch (e) {
      console.error('Vue Devtools failed to install:', e.toString())
    }
  }

这里是在尝试安装VUEJS的调试工具

  1. 打包。npm run electron:build

更详细的描述可以参考:https://zhuanlan.zhihu.com/p/75764907

遇到的问题

  1. vue组件中使用require导入nodejs的模块时,在node_module中的包都是有的,但就是调用失败,错误信息如下:
    在这里插入图片描述

解决方法:background.jselectron的核心文件中,把nodeIntegration 设置为truecontextIsolation 设置为false,在vue组件中使用window.require()导入需要的nodejs模块

原因: 查看文档 https://www.electronjs.org/docs/tutorial/quick-start,至于为什么用window.require(),还不知、、、、。
可参考的分析:https://www.cnblogs.com/cdyang/p/electron-require-error.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
VueElectron可以很好地结合起来,用于开发桌面应用程序。下面是一个简单的VueElectron桌面应用开发实例: 1. 首先,需要安装VueElectron的依赖: ``` npm install vue npm install electron ``` 2. 创建Vue项目,可以使用Vue CLI来创建一个新的项目。 ``` vue create my-electron-app ``` 3. 在Vue项目中安装Electron的依赖: ``` npm install electron --save-dev ``` 4. 创建Electron的主进程和渲染进程: 在Vue项目的根目录下创建一个名为`main.js`的Electron主进程文件,编写如下内容: ``` const electron = require('electron'); const app = electron.app; const BrowserWindow = electron.BrowserWindow; let mainWindow; function createWindow () { mainWindow = new BrowserWindow({ width: 800, height: 600, webPreferences: { nodeIntegration: true } }); mainWindow.loadFile('index.html'); mainWindow.on('closed', function () { mainWindow = null; }); } app.on('ready', createWindow); app.on('window-all-closed', function () { if (process.platform !== 'darwin') { app.quit(); } }); app.on('activate', function () { if (mainWindow === null) { createWindow(); } }); ``` 在Vue项目的`src`目录下创建一个名为`main.js`的Electron渲染进程文件,编写如下内容: ``` import Vue from 'vue' import App from './App.vue' Vue.config.productionTip = false new Vue({ render: h => h(App), }).$mount('#app') ``` 5. 创建一个名为`index.html`的文件,用于加载Vue应用。 ``` <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>My Electron App</title> </head> <body> <div id="app"></div> <script src="./dist/js/chunk-vendors.js"></script> <script src="./dist/js/app.js"></script> </body> </html> ``` 6. 在`package.json`文件中添加以下内容,用于启动Electron应用。 ``` { "name": "my-electron-app", "version": "0.1.0", "description": "A Vue-Electron desktop application", "main": "main.js", "scripts": { "start": "electron ." }, "dependencies": { "electron": "^11.3.0", "vue": "^2.6.11" }, "devDependencies": { "vue-template-compiler": "^2.6.11" } } ``` 7. 启动应用程序: 在命令行中运行以下命令,启动Electron应用程序。 ``` npm start ``` 以上就是一个简单的VueElectron桌面应用开发实例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值