Electron打包支持多语言

准备多语言许可文件

在项目的构建资源目录(如 build 或 public)中,创建多个许可文件,并在文件名中添加语言代码后缀。例如:

  • license_zh_CN.txt(简体中文)

  • license_en.txt(英文)

确保这些文件的编码格式为 带有 BOM UTF-8,以避免中文乱码问题。

/build是electron-builder默认资源目录,也可以在package.json中修改buildResources字段指定。

修改 package.json

bash 复制代码
"directories": {
  "output": "app_client",
  "buildResources": "build"
},
"nsis": {
  "oneClick": false,
  "perMachine": true,
  "allowToChangeInstallationDirectory": true,
  "installerIcon": "build/icon.ico",
  "uninstallerIcon": "build/icon.ico",
  "createDesktopShortcut": true,
  "createStartMenuShortcut": true,
  "multiLanguageInstaller": true,
  "displayLanguageSelector": true,
  "installerLanguages": ["zh_CN", "en_US"] // 只显示简体中文和英文
}

关键配置说明

  • multiLanguageInstaller:设置为 true,表示创建多语言安装包。

  • displayLanguageSelector:设置为 true,显示语言选择对话框。

  • installerLanguages:指定安装向导支持的语言列表。例如,"zh_CN", "en_US" 表示只显示简体中文和英文。

验证多语言支持

打包应用:

运行以下命令打包应用。

bash 复制代码
npm run electron:build

安装测试:

  • 打包应用后,安装向导会显示语言选择对话框,且只包含简体中文和英文选项。

  • 选择语言后,安装向导会根据选择的语言加载对应的许可文件。

相关推荐
吃糖的小孩3 小时前
从只读页面到可控真实探针:我如何给 Owner Console 加手动诊断
前端
谷无姜3 小时前
为什么你的性能优化无效?可能是"木桶效应"在作祟
前端·性能优化
雾非雾3 小时前
《基于具身交互智能数字人技术:如何打造AI数字人宣讲平台"红厅智播”》
前端
Revolution613 小时前
一段 JavaScript 代码执行时,到底发生了什么
前端·javascript
智能起源3 小时前
关于元素层级过多,导致压祯的问题(使用winform或者WPF应用的webview组件嵌套网页时,动效卡顿问题)
前端
Old Uncle Tom4 小时前
银行用户画像 -- 金融目标与需求意图
前端·人工智能·金融
IT_陈寒4 小时前
Vue的响应式让我加班到凌晨3点,原来问题出在这
前端·人工智能·后端
东方小月4 小时前
从0开发一个 Coding Agent(一):前言
前端·人工智能·typescript
恋猫de小郭4 小时前
Flutter 全新真 3D 实现,用 flutter_scene 能开发一个「我的世界」
android·前端·flutter