Reactjs 是否可以覆盖一条特定intl.formatMessage的区域设置?

Reactjs 是否可以覆盖一条特定intl.formatMessage的区域设置?,reactjs,react-intl,Reactjs,React Intl,我将react intl与en和fr一起使用,我的react应用程序包装在 <IntlProvider locale={lang}> 例如,当lang为en时,所有intl.formatMessage调用都会生成英文文本 我想要实现的是,我想要,但在应用程序内部,我需要将一条特定的intl.formatMessage翻译成fr在同一个容器中添加多个IntlProvider。必须为每种语言定义区域设置和消息。 这里是一个带有格式化消息的示例,但它可以是更大的元素: <div

我将
react intl
en
fr
一起使用,我的react应用程序包装在

<IntlProvider locale={lang}>

例如,当
lang
en
时,所有
intl.formatMessage
调用都会生成英文文本


我想要实现的是,我想要
,但在应用程序内部,我需要将一条特定的
intl.formatMessage
翻译成
fr
在同一个容器中添加多个
IntlProvider
。必须为每种语言定义区域设置和消息。 这里是一个带有格式化消息的示例,但它可以是更大的元素:

<div>
  <IntlProvider locale='en' messages={messagesEn} >
    <FormattedMessage value={message.hello} />
  </IntlProvider>

  <IntlProvider locale='fr' messages={messagesFr} >
    <FormattedMessage value={message.hello} />
  </IntlProvider>
</div>


如果您有用于两种语言翻译的JSON文件,您可以将
fr
一个放在相应的
en
翻译中吗?谢谢您的提示,tanmay,但我需要在同一页上同时访问相同文本的
en
fr
版本,例如打印“Good day”和“祝您愉快”(两者都定义为
消息。您好
)。查看了他们的文档/问题,没有发现任何重要内容。也许你可以继续为这个问题创建一个问题。他们可能有一个解决方法。嗯,我实际上需要的是将一个IntlProvider嵌入另一个IntlProvider,如下所示:但这似乎不起作用,内部翻译也是英文的,控制台中的警告是“[React Intl]错误格式化消息:“app.hello”用于区域设置:“fr”,使用默认消息作为回退。TypeError:消息必须作为字符串或AST提供。消息的指定方式如下: