javascript - 配置 i18next 以使用警告日志而不是默认信息级别
问题描述
目前我有很多日志,i18next
这使得控制台难以使用:
我需要i18next
使用警告级别而不是默认信息级别,以便能够过滤它们。
我正在检查文档,但我没有看到任何选项。我目前的配置是:
i18n
.use(XHR)
.use(LanguageDetector)
.init({
debug: true,
lng: 'en',
keySeparator: false,
addMissing: true,
interpolation: {
escapeValue: false
},
resources: {
en: {
translations: translationEng
},
ns: ['translations'],
defaultNS: 'translations'
})
解决方案
您可以禁用debug: false
,这将禁用默认的console.log
东西。missingKey
以及实例上的事件侦听i18n
器。
i18n
.use(XHR)
.use(LanguageDetector)
.init({
debug: false, // <-- disable default console.log
lng: 'en',
keySeparator: false,
addMissing: true,
interpolation: {
escapeValue: false
},
resources: {
en: {
translations: translationEng
},
ns: ['translations'],
defaultNS: 'translations'
});
i18n.on('missingKey', (lng, namespace, key, fallbackValue) => {
console.warn(lng, namespace, key, fallbackValue);
})
基于此代码
其他选项是使用options.missingKeyHandler
传递自定义处理程序来处理丢失的键。
i18n
.use(XHR)
.use(LanguageDetector)
.init({
debug: false, // disable this
lng: 'en',
keySeparator: false,
addMissing: true,
interpolation: {
escapeValue: false
},
resources: {
en: {
translations: translationEng
},
ns: ['translations'],
defaultNS: 'translations',
saveMissing: true, // must be enabled
missingKeyHandler: (lng, ns, key, fallbackValue) => {
console.warn(lng, ns, key, fallbackValue)
}
})
基于此代码
推荐阅读
- javascript - JavaScript:if else 语句多个条件
- c++ - 我可以知道有多少进程在 C/C++ 中打开同一个文件吗?
- java - BeanIO - 在编组以固定宽度文件时禁用填充或跳过字段(如果为空)
- opencv - 如何从图片中获取所有局部“峰值”?
- java - 如何为整个 Spring Boot 应用程序生成令牌
- python - 仅在运行 pytest 时更改 settings.py 中的 Django 设置 ALLOWED_HOSTS
- ios - MBProgressHUD窗帘?
- c# - 如何实现非泛型接口并使用泛型调用
- azure - 容器卡在没有状态和事件
- kubernetes - 没有 CRD 的 Kubernetes 操作员