一、背景
很久没写bug了,最近写了一些业务上的小工具,因为包有点大,所以要裁一下。
首选其实就是去掉不需要的语言文件
二、如何实现
2.1 添加默认语言
在electron的入口文件添加
app.commandLine.appendSwitch('lang', 'zh-CN');
2.2 在打包后的钩子处脚本删除
比如我使用的是electron-builder,可以在打包配置文件中找到afterPack这个配置项
配置读取的脚本文件如下:
//build/hooks/afterPack.js
//参考 https://www.electron.build/configuration/configuration#afterpack
exports.default = async function (context) {
//console.log(context)
const fs = require('fs')
const localeDir = context.appOutDir + '/locales/'
fs.readdir(localeDir, function (err, files) {
if (!(files && files.length)) return
for (let i = 0, len = files.length; i < len; i++) {
const match = files[i].match(/zh-CN\.pak/) //只保留中文
if (match === null) {
fs.unlinkSync(localeDir + files[i])
}
}
})
}