news 2026/4/18 6:37:36

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
一键 i18n 国际化神库!适配 Vue、React!

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

作为一名前端开发,给项目做多语言早已是家常便饭。

可每次面对成百上千条文案,“一行行手动翻译+维护 N 个 JSON 文件”仍然是让人头秃的体力活。

今天就把我实测有效的3 款零入侵、一键式国际化神库分享给大家——Vue2/3、React 都能用,真正做到“写完代码就出国”。

🎯i18n-auto-extractor

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

  • 安装即可跑,零配置开箱即用
  • Vue、React、原生项目全部通吃
  • 内置谷歌翻译,支持 100+ 语言
  • 极小包体,运行时动态切换语言

使用 3 步走

npmi -D i18n-auto-extractor npx i18n-auto-extractor# 生成配置文件
// 代码里包一层即可consttitle=$at('欢迎来到我的网站')

构建后会自动生成:

locales/ ├─ zh.json // 原中文 ├─ en.json // 自动翻译 ├─ fr.json // ...

🎯auto-i18n-translation-plugins

连 $t() 都不用写,源码中文自动翻译

  • 完全零侵入,Babel 扫描无需改代码
  • Vite / Webpack / Rollup 插件形态全覆盖
  • Google、有道、百度翻译源任意切换
  • 增量构建,只翻译新增文案省流量
npmi -D vite-auto-i18n-plugin@^1.0.23

使用示例(Vite)

npmi -D vite-auto-i18n-plugin@^1.0.23
// vite.config.tsimportviteAutoI18nfrom'vite-auto-i18n-plugin'exportdefaultdefineConfig({plugins:[vue(),viteAutoI18n({targetLangList:['en','ja','ko'],translator:newYoudaoTranslator({appId:'xxx',appKey:'xxx'})})]})

构建完成后自动生成 lang/index.json,直接引入即可使用。

🎯i18n-cli

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

  • CLI 一键扫描并替换中文为 t(‘xxx’)
  • Excel 导入导出,翻译团队协作零门槛
  • 支持百度、谷歌、有道多翻译源
  • 增量模式仅处理新增文案,避免重复劳动

使用 2 步走

npmi -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-cliCLI + 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
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 15:19:03

LobeChat能否用于创建商业模式画布?创业项目策划助手

LobeChat:打造你的AI创业策划助手 在今天这个“人人都是产品经理”的时代,一个绝妙的创意可能诞生于咖啡馆的一次闲聊,也可能来自深夜灵光乍现的备忘录。但真正让想法落地的,不是灵感本身,而是如何快速、系统地把它转化…

作者头像 李华
网站建设 2026/4/15 14:50:04

QML/QtQuick3D如何将数据传递给GLSL着色器?

QML 传递给 GLSL Shader中Uniform变量的工作原理详解 QML/QtQuick3D如何将数据传递给GLSL着色器? 例如 // 在Shader代码中直接使用 pos.x (c0 c1 * pos.z c2 * pos.z * pos.z c3 * pos.z * pos.z * pos.z);中c0, c1, c2, c3 在着色器中没有声明但是又可以直接…

作者头像 李华
网站建设 2026/4/18 3:17:19

RocketMQ 监控与告警:Prometheus + Grafana 可视化监控搭建

在分布式消息中间件的生产实践中,“看得见”才能“控得住”。RocketMQ作为阿里开源的高性能消息队列,其运行状态直接影响业务链路的稳定性。本文将聚焦RocketMQ监控体系的核心搭建方案——基于Prometheus采集指标、Grafana可视化展示,带你从零…

作者头像 李华
网站建设 2026/4/15 14:49:58

RocketMQ Broker 故障恢复:主从切换、数据同步与集群自愈机制

在分布式消息中间件的架构中,RocketMQ 凭借高吞吐、低延迟的特性占据重要地位,而 Broker 作为消息存储与转发的核心节点,其可用性直接决定了整个消息系统的稳定性。一旦 Broker 出现故障,如何快速实现故障恢复、保障消息不丢失、业…

作者头像 李华
网站建设 2026/4/15 16:11:09

ip版SSL证书

解决获得一本被浏览器信任的IP版本的SSL证书,你必须满足以下条件:1、这是一个公网的IP地址(虽然有的机构可以用局域网IP地址颁发证书,但由于局域网IP存在不具有唯一性,所以有一定风险,而且可以容易被仿照&a…

作者头像 李华
网站建设 2026/4/18 2:06:13

一文读懂7大排班考勤系统的核心差异与适用场景

【导读】在制造业三班倒工厂、全国铺开的连锁门店、业务波动剧烈的服务业中,排班考勤已经不再是一张 Excel 能“撑住”的事。班次多、规则杂、加班结算复杂,一旦出错就是员工投诉、劳动仲裁和用工成本失控。面对市场上功能各异的排班考勤系统&#xff0c…

作者头像 李华