获取 i18next 以回退到 'NO TRANSLATION'
Get i18next to fallback to 'NO TRANSLATION'
如果找不到翻译键,i18next 翻译库默认情况下似乎会回退到翻译键,例如
// No translation defined for CANCEL yet
i18next.t('CANCEL') // Returns 'CANCEL'
如果找不到密钥的翻译,我宁愿回退到一条独特的消息,使我们明显错过翻译或输入错误的翻译密钥。最好在消息中提及密钥,例如
i18next.t('CANCEL') // Returns 'No translation found for "CANCEL"'
某种回退回调函数是理想的,因为这样我们还可以记录到 console/remote 服务任何缺失的翻译。
如何使用 i18next 库实现类似的功能?
事实证明,i18next 在初始化时接受了选项中的处理程序,让您可以为丢失的键设置值。
i18n.init({
...
saveMissing: true, // Must be set to true
parseMissingKeyHandler: (key: string) => {
return `No translation found for "${key}"`;
}
})
根据 official documentation saveMissing
不是 parseMissingKeyHandler
工作所必需的。没有它我的代码工作正常。
如果找不到翻译键,i18next 翻译库默认情况下似乎会回退到翻译键,例如
// No translation defined for CANCEL yet
i18next.t('CANCEL') // Returns 'CANCEL'
如果找不到密钥的翻译,我宁愿回退到一条独特的消息,使我们明显错过翻译或输入错误的翻译密钥。最好在消息中提及密钥,例如
i18next.t('CANCEL') // Returns 'No translation found for "CANCEL"'
某种回退回调函数是理想的,因为这样我们还可以记录到 console/remote 服务任何缺失的翻译。
如何使用 i18next 库实现类似的功能?
事实证明,i18next 在初始化时接受了选项中的处理程序,让您可以为丢失的键设置值。
i18n.init({
...
saveMissing: true, // Must be set to true
parseMissingKeyHandler: (key: string) => {
return `No translation found for "${key}"`;
}
})
根据 official documentation saveMissing
不是 parseMissingKeyHandler
工作所必需的。没有它我的代码工作正常。