一键 i18n 国际化神库!适配 Vue、React!

🎯i18n-auto-extractor

用 $at() 包一层,剩下的交给机器人

  • 安装即可跑,零配置开箱即用

  • Vue、React、原生项目全部通吃

  • 内置谷歌翻译,支持 100+ 语言

  • 极小包体,运行时动态切换语言

使用 3 步走
复制代码
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() 都不用写,源码中文自动翻译

  • 完全零侵入,Babel 扫描无需改代码

  • Vite / Webpack / Rollup 插件形态全覆盖

  • Google、有道、百度翻译源任意切换

  • 增量构建,只翻译新增文案省流量

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

使用示例(Vite)
复制代码
npm i -D vite-auto-i18n-plugin@^1.0.23
TypeScript 复制代码
// 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,直接引入即可使用。

🎯i18n-cli

命令行一把梭,老项目 5 分钟上线多语言

  • CLI 一键扫描并替换中文为 t('xxx')

  • Excel 导入导出,翻译团队协作零门槛

  • 支持百度、谷歌、有道多翻译源

  • 增量模式仅处理新增文案,避免重复劳动

使用 2 步走
复制代码
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 有侵入,但长期可维护
老项目 2 天上线英文版 auto-i18n-translation-plugins 完全不改动源码
需要产品/翻译团队介入 i18n-cli CLI + Excel 协作最顺畅

🏁 总结

  • 不想写 $t() → 选 auto-i18n-translation-plugins

  • 愿意包一层 $at() 换长期省心 → 选 i18n-auto-extractor

  • 命令行一把梭 + Excel 协作 → 选 i18n-cli

三款都是 MIT 开源 ,按场景挑一把梭,国际化再也不是体力活!

Github 地址

  • 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

相关推荐
IT_陈寒4 分钟前
Redis连接池泄漏那次,我差点把生产环境搞崩了
前端·人工智能·后端
强尼银手9 分钟前
我花一天做了个格斗游戏原型,判定全对,然后被「美术」劝退了
前端·javascript
石小石Orz19 分钟前
AI 正在蚕食我们的编码能力
前端·后端·算法
陈随易1 小时前
专注飞机 FocusFlight,两个人把番茄钟做成了一趟航班
前端·后端·程序员
总要学点什么2 小时前
第98篇:三维特效-材质线效果——给一条线换十种材质,虚线的图案只填了一半
开发语言·前端·javascript·ecmascript·gis·webgl·材质
10share2 小时前
基于大模型的 i18n 方案:把中文原文当 Key,轻松搞定多语言维护
前端·vue.js
古茗前端团队4 小时前
由 key 引发的思考
前端·javascript·react.js
kyriewen4 小时前
我扫了 422 个仓库,近一半 CI 在裸装依赖
前端·javascript·程序员
鹏多多5 小时前
AI 到底能不能独立做个产品?我拿一个小程序验证了
前端·微信小程序·ai编程
火山引擎开发者社区5 小时前
构建专属的飞书群开发助手,AgentKit Studio 一键部署 DeepSeek Harness Super-Agent
前端