Next-Translate的Trans组件的用法不符合以下示例

9q78igpj  于 2022-10-01  发布在  其他
关注(0)|答案(1)|浏览(135)

我正在试验next.js,并使用Next-Translate库为我的网站实现i18N支持。我发现的主要问题是在我的网站上使用例子。

我有这个.jsx代码:

<p>
  <Trans
   i18nKey='common:activity.example'
   components={{
     link: <Link href='/kdajsldj' />,
     a: <a />,
     b: <b className='color--red' />,
     }}
   values={{ count: 42 }}
   />
</p>

在我的共同之处,json:

"example": "<link><a>The number is <b>{{count}}</b></a></link>",

这基本上抛出了一个我无法解决的错误:

Error: React.Children.only expected to receive a single React element child.
yzuktlbb

yzuktlbb1#

我认为您需要使用数字而不是像这样的Html标记

"example": "<0><1>The number is <2>{{count}}</2></1></0>",

然后传递数组,其中只将带有类的标记传递给相应的索引,就像在文档中一样

<Trans
  i18nKey="common:example"
  components={[< link />, <a href="something" />, <b/>]}
  values={{ count: 42 }}
/>

希望这能帮上忙。

相关问题