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

Angular中i18next复数化配置异常:设备数量展示报错排查

问题诊断与解决

你的配置问题核心是翻译键名与调用参数不匹配,具体修正步骤如下:

1. 修正翻译文件(bundle.json)的键名

i18next结合上下文与复数的键名规则为 [基础键名]_[上下文]_[复数后缀],你当前的第三个键上下文后缀错误,需统一为vcenter:

{
  "device_vcenter_zero": "vCenters",
  "device_vcenter_one": "1 vCenter",
  "device_vcenter_other": "{{count}} vCenters"
}

2. 修正TypeScript调用代码

调用时上下文参数需保持一致(始终为vcenter),无需根据设备数量切换上下文,i18next会自动根据count值匹配对应的复数后缀:

console.log(i18next.t('device', {context: 'vcenter', count: 0}));
console.log(i18next.t('device', {context: 'vcenter', count: 1}));
console.log(i18next.t('device', {context: 'vcenter', count: 2}));

错误原因说明

  1. 翻译文件中第三个键的上下文后缀写成vcenters,与调用时传入的vcenter不匹配,导致无法找到对应翻译
  2. 第三次调用错误将上下文设为vcenters,进一步加剧了键名匹配失败

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 11:27:26