首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何修复react-i18next中的useTranslation错误

如何修复react-i18next中的useTranslation错误
EN

Stack Overflow用户
提问于 2021-09-01 09:57:49
回答 1查看 233关注 0票数 0

我的error边界使用来自i18next的useTranslation钩子捕获到错误。由于这个错误边界,我无法获得正确的错误文本。刚收到类似“上述错误发生在...”之类的文本。你能告诉我为什么会这样吗?

这一行的问题:

代码语言:javascript
复制
const {t} = useTranslation();

i18配置:

代码语言:javascript
复制
import i18next from "i18next";
import {initReactI18next} from "react-i18next";
import HttpApi from "i18next-http-backend";
import LanguageDetector from "i18next-browser-languagedetector";

export const ns = ["translation", "notification", "form", "modal", "table", "plans"];

i18next
  .use(initReactI18next)
  .use(HttpApi)
  .use(LanguageDetector)
  .init({
    supportedLngs: ["en", "ru"],
    fallbackLng: "en",
    nonExplicitSupportedLngs: false,
    cleanCode: true,
    ns: ns,
    debug: process.env.NODE_ENV === "development",
    interpolation: {
      format: function (value, format) {
        if (format === "uppercase") return value.toUpperCase();
        if (format === "lowercase") return value.toLowerCase();
      }
    }
  });

export default i18next;

我在错误边界中使用了useTranslation,然而,删除它并不是一个解决方案。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-16 18:59:58

你不能在类组件中使用react钩子。

但是,您可以创建即席以将转换转发到错误边界组件。

有关如何执行此操作的更多详细信息,请参阅此link

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69011590

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档