这是如何工作的,而不返回警告 validateDOMNesting(…)?

huangapple go评论72阅读模式
英文:

How this is working and not returning a warning validateDOMNesting(...)?

问题

我有这个问题,但我做了一个小改动,如下:

children: items.map((item) => {
  const labelName = item.label;
  //DONE:将硬编码的路径更改为从后端发送的路径
  item.label = <NavLink to={item.key}>{labelName}</NavLink>;
  return {
    label: <div>{labelName}</div>,
    key: item.key,
  };
});

没有错误,它正在工作,我的问题是为什么?

英文:

I have this problem

&lt;Menu
  mode=&quot;horizontal&quot;
  items={
    menuState &amp;&amp;
    menuState?.map((valueMenus, index) =&gt; {
      const key = index + 1;
      const items = valueMenus.menusInferiores;

      return {
        key,
        label: (
          &lt;div&gt;
            {valueMenus.menu} &lt;DownOutlined /&gt;
          &lt;/div&gt;
        ),
        children: items.map((item) =&gt; {
          return {
            label: &lt;NavLink to={item.key}&gt;{labelName}&lt;/NavLink&gt;,
            key: item.key,
          };
        }),
      };
    })
  }
/&gt;;

result of console:

but, I did a little change like this :

children: items.map((item) =&gt; {
  const labelName = item.label;
  //DONE:Cambiar la ruta quemada por la ruta que nos envian del bk
  item.label = &lt;NavLink to={item.key}&gt;{labelName}&lt;/NavLink&gt;;
  return {
    label: &lt;div&gt;{labelName}&lt;/div&gt;,
    key: item.key,
  };
});

no error
and it's working, my question is why ?

答案1

得分: 0

你只是将你的<NavLink/>组件用一个<div>包裹起来,这就是你所做的,而且这样做是有效的,因为根据错误提示中所述,<a>不再是<a>的子代了。要注意的是,<NavLink/>实际上是一个<a>元素,所以现在你有了:

<a>
  <div><a></a></div>
</a>
英文:

you just wrraped your &lt;NavLink/&gt; component with a &lt;div&gt; this is what you did and this is working because &lt;a&gt; is no longer a descendant of &lt;a&gt; as mentioned is the error note that &lt;NavLink/&gt; is in fact an &lt;a&gt; element so instead of :

&lt;a&gt;
&lt;a&gt;&lt;/a&gt;
&lt;/a&gt;

now you have :

&lt;a&gt;
&lt;div&gt;&lt;a&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/a&gt;

huangapple
  • 本文由 发表于 2023年2月6日 08:41:42
  • 转载请务必保留本文链接:https://go.coder-hub.com/75356493.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定