reactI18nextOptions是否有默认值?未配置react选项时i18n.options.react取值
问题解答
当你初始化i18n实例时未设置react选项,i18n.options.react的值是undefined,但react-i18next内部会通过内置的默认配置来处理相关逻辑。
结合源码分析:
从TransWithoutContext.js的这段代码可以看出:
const reactI18nextOptions = { ...getDefaults(), ...(i18n.options && i18n.options.react) }; const useAsParent = parent !== undefined ? parent : reactI18nextOptions.defaultTransParent; return useAsParent? createElement(useAsParent, additionalProps, content) : content;
代码中先通过getDefaults()获取react-i18next的默认配置,再尝试合并你可能设置的i18n.options.react配置。由于你没有在初始化时配置react选项,i18n.options.react是undefined,展开undefined不会覆盖任何默认值,最终reactI18nextOptions会完全使用getDefaults()返回的默认配置。
文档中提到的“未配置时这些选项会有默认值”,指的是react-i18next内部会使用预设的默认配置来运行,而非自动在i18n.options中填充react字段的默认值。
内容的提问来源于stack exchange,提问作者joey
相关产品推荐
相关产品推荐

