用途:在非 Next.js 的 React 应用(含 React 19)中用 react-i18next 实现翻译。Next.js App Router 请用 nextjs-i18n,Astro 请用 astro-i18n。
主要能力:useTranslation() 访问翻译与 i18n 实例,useTranslation(ns) 加载单个命名空间,useTranslation([ns]) 加载多个命名空间;命名空间按功能拆分以配合代码分割;基于计数的复数与 ICU MessageFormat;变量、日期、数字、货币插值;按路由懒加载翻译;从浏览器、URL、cookie、localStorage 自动检测语言;React 19 的 Suspense、useTransition 与并发渲染集成;Trans 组件在翻译中嵌入 JSX;RTL(阿拉伯语、希伯来语)支持;缺失键回退策略;i18n 单元测试。i18next ≥25.4 提供 TypeScript Selector API,实现类型安全与自动补全。
关键包:i18next(核心,约 40KB)、react-i18next(React 绑定,约 12KB)、i18next-http-backend(懒加载,约 5KB)、i18next-browser-languagedetector(自动检测,约 8KB)。
使用方式:技能要求先并行启动三个 Agent(fuse-ai-pilot:explore-codebase、fuse-ai-pilot:research-expert、mcp__context7__query-docs),实现后运行 fuse-ai-pilot:sniper 验证;遵循 solid-react 的 SOLID 原则,接口置于 modules/[feature]/src/interfaces/,所有导出必须有 JSDoc,组件内不放业务逻辑。提供基础配置、语言切换器、类型化翻译、表单校验、路由懒加载、日期数字格式化、复数插值、Trans 组件、测试等模板。
最佳实践:用 Suspense 包裹应用;每个功能一个命名空间;用 Selector API 保证键类型安全;按需懒加载命名空间;配置语言检测顺序;始终设置 fallbackLng。
限制与反模式:禁止硬编码字符串、缺少 Suspense、所有翻译放一个文件、无回退语言、字符串拼接、手动管理语言状态。具体安装命令与完整代码示例资料未提供。