You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Lingui中使用t宏实现带参数的组件外动态翻译方案

使用Lingui t宏实现带变量的多语言翻译

1. 定义带插值的翻译条目

在Lingui的语言资源文件中分别配置英文和匈牙利语的翻译内容:

  • 英文资源(en.json):
{
  "userPayments": "User {id} payments"
}
  • 匈牙利语资源(hu.json):
{
  "userPayments": "Felhasználó {id} fizetései"
}

2. 调用t宏时传入变量参数

修改现有代码,在调用t宏时通过参数对象传递id变量:

title: (id, i18n) => t(i18n)`userPayments`({ id })

如果是React项目使用Lingui JSX宏,写法如下:

title={(id) => <Trans id="userPayments" values={{ id }} />}

关键说明

  • 翻译文本中的{id}占位符要和传递的变量名严格对应。
  • 确保已正确初始化Lingui的i18n实例,加载了对应语言的资源文件,并且当前语言环境已切换到目标语言(英文/匈牙利语)。

内容的提问来源于stack exchange,提问作者Laczkó Örs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 05:17:04