蓝戒博客

  • 首页
  • 研发说
  • 架构论
  • 效能录
  • AI谈
  • 随笔集
智构苍穹
融合 AI、架构与工程实践,沉淀方法论,构建可持续的技术价值。
  1. 首页
  2. 研发说
  3. 正文

i18n 高效实现方案:前端国际化神器安利一波

2025年12月4日 362点热度 1人点赞 0条评论

在前端开发中,国际化(i18n)早已是标配功能,但面对数百条文案、数份语言包、无休止的多人协作,手工维护 JSON 文件依然让人头大。

传统做法通常包括:

  • 手动查找中文文案
  • 手动补齐语言包
  • 手动翻译
  • 手动替换 t('xxx')
  • 手动校验是否遗漏

以上流程不仅耗时,还极易出现遗漏、冲突、重复翻译等问题。

幸运的是,新一代自动化 i18n 工具已经让国际化进入“零体力劳动时代”。今天就带你全面了解 三款实测高效、支持 Vue/React 的 i18n 自动化解决方案,并给出实际项目的场景选型指南。


🎯 一、i18n-auto-extractor:轻侵入式,一键抽取 + 自动翻译

如果你愿意在源码中包一层 $at(),那这款工具绝对值得长期使用。

⭐ 特点

  • 轻量侵入:源码中文包一层 $at('欢迎使用')
  • 跨框架通吃:Vue2、Vue3、React、原生 JS、TS 都能用
  • 零配置开箱即用
  • 构建时自动抽取中文
  • 自动生成语言包(内置谷歌翻译)
  • 支持 100+ 语言,包体小,运行时语言切换顺滑

🛠️ 使用步骤(3 步走)

Bash
npm i -D i18n-auto-extractor
npx i18n-auto-extractor   # 自动生成配置文件

代码中直接包一层:

JavaScript
const title = $at('欢迎来到我的网站')

构建后自动生成:

locales/
├─ zh.json
├─ en.json
├─ fr.json

适合 新项目长期使用,可维护性极强。


🎯 二、auto-i18n-translation-plugins:真正的零侵入方案,老项目秒级国际化

如果你不想在源码写 $t() 或 $at(),那么这款工具完全没有任何侵入。
它能自动扫描源码中的中文,并自动替换为 key。

⭐ 特点

  • 完全零侵入:无需写 $t() 或 $at()
  • Vite / Webpack / Rollup 全覆盖
  • 支持百度 / 谷歌 / 有道翻译源
  • 自动增量翻译:只翻译新增中文
  • 老项目迁移成本极低

🛠️ Vite 示例

Bash
npm i -D vite-auto-i18n-plugin@^1.0.23

JavaScript
// vite.config.ts
import viteAutoI18n from 'vite-auto-i18n-plugin'

export default defineConfig({
  plugins: [
    vue(),
    viteAutoI18n({
      targetLangList: ['en', 'ja', 'ko'],
      translator: new YoudaoTranslator({ appId: 'xxx', appKey: 'xxx' })
    })
  ]
})

构建后会自动生成:

lang/index.json

适合 老项目 1〜2 天上线多语言版本。


🎯 三、i18n-cli:命令行一把梭,最适合多人协作 + 翻译团队

CLI 工具的优势在于:适合大型项目 + 翻译团队合作。
尤其是内置 Excel 进出能力,对产品/运营团队非常友好。

⭐ 特点

  • 扫描 + 生成 key + 翻译,全流程自动化
  • Excel 导入导出(翻译团队最爱)
  • 增量模式避免重复翻译
  • 多翻译源支持(百度/谷歌/有道)

🛠️ 使用(2 步走)

Bash
npm i -g @ifreeovo/i18n-extract-cli
it --locales en,ja   # 全量扫描并翻译
it --incremental     # 仅处理新增文案

产物:

// locales/zh-CN.json
{ "a1b2c3": "提交订单" }

// locales/en.json
{ "a1b2c3": "Submit Order" }

适合 需要产品 + 翻译团队协作的中大型项目。


🎯 四、场景选型指南

项目场景推荐工具推荐理由
新项目持续维护,愿意包一层i18n-auto-extractor侵入小,长期可维护
老项目快速上线英文版auto-i18n-translation-plugins完全零侵入,改动最少
多人协作,产品/翻译参与i18n-cliExcel 协作最佳体验
想要自动化到极致auto-i18n-translation-plugins自动扫描中文,不写任何函数
规模大、语言多、流程复杂i18n-cliCLI + 翻译团队最佳

🏁 五、总结

国际化不应该再是体力活。总结三款工具的优势如下:

  • 不想写 $t() → 用 auto-i18n-translation-plugins
  • 愿意包一层 $at() 获得更强控制力 → 用 i18n-auto-extractor
  • 团队协作 + Excel → 用 i18n-cli

三款工具均为 MIT 开源,适用于 Vue2/3、React,并能覆盖新项目、老项目、协作流程等所有场景。

国际化不再繁琐,真正做到:
“写完代码就出国”。


🔗 开源地址

  • i18n-auto-extractor
    https://github.com/qianyuanjia/i18n-auto-extractor
  • auto-i18n-translation-plugins
    https://github.com/auto-i18n/auto-i18n-translation-plugins
  • i18n-cli
    https://github.com/IFreeOvO/i18n-cli
标签: auto-i18n-translation-plugins i18n i18n-auto-extractor 国际化 自动化翻译
最后更新:2025年12月4日

cywcd

我始终相信,技术不仅是解决问题的工具,更是推动思维进化和创造价值的方式。从研发到架构,追求极致效能;在随笔中沉淀思考,于 AI 中对话未来。

打赏 点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

cywcd

我始终相信,技术不仅是解决问题的工具,更是推动思维进化和创造价值的方式。从研发到架构,追求极致效能;在随笔中沉淀思考,于 AI 中对话未来。

最新 热点 随机
最新 热点 随机
《生化危机》女主手搓AI记忆系统,48小时狂揽7千星!AI的长期记忆终于有解了? 用一条自然语言指令,让AI自动完成了调研、写稿、配音、剪辑全流程 你以为 AI 配音还在拼“像不像”,结果有人已经把“整个语音工作室”开源了 Claude Opus 4.7 上线:编程能力炸裂式跃升,Anthropic 手握更强模型却故意不发布 Gemma 4发布4天即遭"完全越狱",开源AI的安全与自由之争 一个文件让AI写代码不再"翻车":45K星的Karpathy指南火了
Dan Koe:不想打工?用这套方法把兴趣变成收入GitHub 爆火 4 万星项目:MiroFish,到底是 AI 新神话,还是下一代预测引擎DeerFlow 2.0:字节跳动开源的超级智能体框架,让AI研究、编码、创作一气呵成!Claude Code 生态大爆发:这周 GitHub 热点,已经不是工具升级,而是工作方式重写我把 Codex CLI 装上了“外挂大脑”:oh-my-codex 到底有多猛?别再盲下大模型了:用 llmfit 一秒看懂你的电脑到底能跑谁
css清除浮动方法及优缺点解析 微前端实现方案分享:主流框架对比分析 给 Agent 装上这些 Skills,才是真正的生产力升级:一份值得收藏的清单 Flutter系列之组件的生命周期 Normalize.css VS reset.css 重置浏览器默认样式 js禁止右键、复制、粘贴、另存为等功能代码
最近评论
渔夫 发布于 6 个月前(11月05日) 学到了,感谢博主分享
沙拉小王子 发布于 9 年前(11月30日) 适合vue入门者学习,赞一个
沙拉小王子 发布于 9 年前(11月30日) 适合vue入门者学习,赞一个
cywcd 发布于 9 年前(04月27日) 请参考一下这篇文章http://www.jianshu.com/p/fa4460e75cd8
cywcd 发布于 9 年前(04月27日) 请参考一下这篇文章http://www.jianshu.com/p/fa4460e75cd8

COPYRIGHT © 2025 蓝戒博客_智构苍穹-专注于大前端领域技术生态. ALL RIGHTS RESERVED.

京ICP备12026697号-2