如何解决在页面级组件上声明namespacesRequired数组
我有一个基于next的项目,并使用i18next包进行了反应,我遇到以下警告,我认为这是为什么根据react profiler加载i18n需要花费大量时间的原因:
您尚未在页面级上声明namespacesRequired数组 组件:withI18nextTranslation(Error)。这将导致所有 命名空间要向下发送给客户端 影响您应用的性能。有关更多信息,请参见: https://github.com/isaachinman/next-i18next#4-declaring-namespace-dependencies
notes:翻译工作正常,我在除404之外的所有组件中都声明了namespacesRequired。
这是我的i18n配置:
const NextI18Next = require('next-i18next').default
const { localeSubpaths } = require('next/config').default().publicRuntimeConfig
const path = require('path');
module.exports = new NextI18Next({
preload: ['fa'],defaultLanguage: 'fa',otherLanguages: ['en','ar'],localeSubpaths,localePath: path.resolve('./public/static/locales'),localeStructure: '{{lng}}/{{ns}}',fallbackLng: 'fa',ignoreRoutes:['/_next/','/static/','/public/','/api/'],serverLanguageDetection: false,defaultNS: 'common',localeExtension: 'json'
});
next.config.js:
const { nextI18NextRewrites } = require('next-i18next/rewrites');
rewrites: async () => nextI18NextRewrites(localeSubpaths),publicRuntimeConfig: {
localeSubpaths
}
版本:
package.json:
"i18next": "^19.7.0"
纱线:
next-i18next@^6.0.2:
version "6.0.2"
dependencies:
"@types/express" "^4.16.1"
core-js "^3"
hoist-non-react-statics "^3.2.0"
i18next "^19.6.3"
i18next-browser-languagedetector "^5.0.0"
i18next-fs-backend "^1.0.7"
i18next-http-backend "^1.0.17"
i18next-http-middleware "^3.0.2"
path-match "^1.2.4"
prop-types "^15.6.2"
react-i18next "^11.7.0"
url "^0.11.0"
在server.js文件中与此无关。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。