Electron读取打包本地静态资源

最近项目中在逐步的尝试使用Vue+Electron做一些客户端,其中就有一个这样的需求:用户在安装完客户端后,需要运维人员把每个电脑上的客户端做不同的配置,也就是说,需要有一个配置文件的存在。

现在拆分下需求细节:

  1. 给到用户的是一个exe的安装包。
  2. 统一的安装包,但是不同机器配置可以修改。
  3. 配置文件应该在安装后的安装目录里面,方便运维查找。
  4. 在开发的时候,就需要把这个读取的静态文件列出来,打包的时候,需要单独抽出来。

查了无数的文档,发现关键字extraResources!有戏!!!

举个例子,假如我现在想读取根目录下的database.json这个文件,我需要在vue.config.jselectronBuilder.builderOptions里面去配置extraResources

2021-01-15T08:47:25.png

然后在需要使用读取这个文件的地方:

import path from 'path'

const isBuild = process.env.NODE_ENV === 'production'

const pathToDbFile = path.join(
  isBuild ? __dirname : __static,
  '../database.json',
);

2021-01-15T08:50:11.png

2021-01-15T08:49:45.png

这样,运维人员就可以手动的修改安装目录中的database.json文件,对不同的客户端做不同的配置了。

已有 2 条评论

  1. aa aa
    回复

    厉害啊

  2. v3 v3
    回复

    有收获 期待更多electron-vue分享

添加新评论