什么是 i18n
i18n 是 internationalization(国际化)的缩写。首尾字母之间共有 18 个字符,因此简写为 i18n。与之对应的还有 L10n(Localization,本地化)。
通俗点说,就是实现多语言切换。让不同母语的用户能看懂界面上的文字。我们最常用的组合是中文简体(zh_CN)与英文(en_US),当然也可以根据需要扩展繁体或其他语言。
建议在项目启动阶段就规划好国际化方案,后期改造成本较高,越早接入越顺畅。
环境准备与安装
首先打开终端进入前端项目目录。开发工具方面,VSCode 在前端领域更为常用。
cd web
使用包管理器安装 vue-i18n。如果你习惯用 npm:
npm install vue-i18n
若使用 pnpm,命令如下,启动速度通常更快:
pnpm add vue-i18n
yarn 用户则执行:
yarn add vue-i18n
构建语言资源文件
接下来创建语言包结构。在 src 目录下新建 locales 文件夹,并在其中放置对应语言的 JSON 文件。
注意:i18n.js 文件应与 locales 文件夹同级,都位于 src 根目录下。建议先折叠 src 下的子文件夹再新建,避免层级混乱。
以支持简体中文和英文为例,创建 zh-CN.json 和 en-US.json。
编写翻译内容
在 zh-CN.json 中写入中文文案:
{
"common": {
"confirm": "确定",
"cancel": "取消",
"pleaseEnterUsernameAndPassword": "请输入账号和密码",
"loginSuccess": "登录成功",
"loginFail": "登录失败"
},
"loginPage": {
"title":




