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

在i18next中调用t函数时能否为特定场景直接指定自定义回退值?

i18next t函数指定回退值的问题解答

可以实现你要的动态回退效果,但你写的参数语法不符合i18next的约定。
i18next的t()函数原生支持通过第二个参数对象的defaultValue属性设置翻译不存在时的回退内容,正确的代码写法如下:

entries.map(entry => 
    t(`page_name__${entry.label}__label`, { defaultValue: entry.label })
);

补充说明:

  • 当key为page_name__${entry.label}__label的翻译不存在时,会直接返回你传入的defaultValue也就是entry.label作为兜底内容,完全符合你预期的效果
  • 如果你需要多层级回退,还可以给defaultValue传入数组,函数会按顺序匹配存在的翻译,示例如下:
t('missingKey', { defaultValue: ['fallbackKey', '最终兜底文本'] })
  • 不要直接写fallback=xxx的语法,这既不符合i18next的参数约定,也不是标准的JS对象传参写法

内容的提问来源于stack exchange,提问作者daviddaubner

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.12 14:45:03