Electron-vue

简介: Electron-vue

介绍


Electron 是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。通过将ChromiumNode.js嵌入到其二进制文件中,Electron 允许您维护一个 JavaScript 代码库并创建可在 Windows、macOS 和 Linux 上运行的跨平台应用程序——无需原生开发经验。


在搭建好vue-cli(脚手架)前提下进行安装与使用,然后将项目进行打包。


搭建教程


npm run build


命令成功后就会在项目中生成dist文件夹


image.png


安装


接下来在dist文件夹下打开终端或者在cmd中打开,并且输入如下命令


npm install -g electron  或者 cnpm install -g electron


electron -v 检测是否成功安装


image.png


在dist文件夹下新建main.js和packge.json

image.png


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 就是打包生成的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();
  }
});


packege.json


{
    "name": "ylemusic",
    "productName": "ylemusic",
    "author": "Yle",
    "version": "1.0.0",
    "main": "main.js",
    "description": "music",
    "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": "ylemusic",
      "artifactName": "demo-${version}-${arch}.${ext}",
      "nsis": {
        "artifactName": "demo-${version}-${arch}.${ext}"
      }
    },
    "dependencies": {
      "core-js": "^2.4.1",
      "electron-builder": "^20.44.4",
      "electron-package": "^0.1.0",
      "electron-updater": "^2.22.1"
    }
  }


最后进行测试,输入命令


electron .


image.png


 打包成软件包

npm install electron-builder

npm install electron-package

执行打包命令:

electron-bulider

提示


vue打包项目及Failed to load resource: net::ERR_FILE_NOT_FOUND问题的解决


image.png


在webpack.prod.config.js进行如下修改


output: {
    path: config.build.assetsRoot,
    filename: utils.assetsPath('js/[name].[chunkhash].js'),
    chunkFilename: utils.assetsPath('js/[id].[chunkhash].js'),
    publicPath:'./' //添加
  },

在webpack.base.config.js进行如下修改


output: {
    path: config.build.assetsRoot,
    filename: '[name].js',
    publicPath: process.env.NODE_ENV === 'production'
      ? "./"+config.build.assetsPublicPath
      : "./"+config.dev.assetsPublicPath
  },

最后重新打包即可


相关文章
|
JavaScript 前端开发 数据处理
vue2、vue3中使用$forceUpdate()
vue2、vue3中使用$forceUpdate()
2007 0
|
3月前
|
缓存 JavaScript 前端开发
对比一下Vue2和Vue3?
本文首发于微信公众号“前端徐徐”,详细对比了 Vue 2 和 Vue 3 在原理、生命周期、性能、编码方式、API、Diff 算法、打包构建、TS 支持等八个方面的差异,帮助读者全面了解两者的不同之处。
283 0
对比一下Vue2和Vue3?
|
4月前
|
存储 缓存 JavaScript
Vue3比Vue2快在哪里?
本文分析了Vue 3相比Vue 2在性能提升的几个关键点,包括改进的diff算法、静态标记、静态提升、事件监听器缓存以及SSR渲染优化,这些改进使得Vue 3在处理大规模应用时更加高效。
45 1
|
6月前
|
缓存 算法 JavaScript
vue3【详解】 vue3 比 vue2 快的原因
vue3【详解】 vue3 比 vue2 快的原因
53 0
|
8月前
|
JavaScript
【vue】 vue2 实现飘窗效果
【vue】 vue2 实现飘窗效果
161 1
|
8月前
|
JavaScript 前端开发 编译器
Vue2跟Vue3的对比
Vue2跟Vue3的对比
103 0
|
JavaScript 编译器 API
vue2 & vue3
### Vue 2和Vue 3之间的区别
|
JavaScript API
Vue(Vue2+Vue3)——77.Vue3.0
Vue(Vue2+Vue3)——77.Vue3.0
|
JavaScript 前端开发 API
vue2.0+vue3.0资料(八)
vue2.0+vue3.0资料(八)
144 1
|
JavaScript 前端开发 算法
vue2.0+vue3.0资料(一)
vue2.0+vue3.0资料(一)
80 0