代码之家  ›  专栏  ›  技术社区  ›  klugjo

Ant Design添加纯文本菜单项

  •  1
  • klugjo  · 技术社区  · 6 年前

    我想在我的 Ant Design Menu ,比如:

    <Menu>
      <Menu.Item key={to} style={style}><a href="/page1"> Page 1</a></Menu.Item>
      <Menu.Item key={to} style={style}><a href="/page2"> Page 2</a></Menu.Item>
      <span>Non clickable text</span>
    </Menu>
    

    索引js:2178警告:React无法识别 subMenuKey 在DOM元素上。如果您有意希望它在DOM中显示为 submenukey 意外地从父组件传递了它,请将其从DOM中移除 元素。

    有人能解决这个问题吗?我真的很喜欢这个菜单组件,所以不想重写我自己的。

    4 回复  |  直到 6 年前
        1
  •  7
  •   Hemanthvrm    5 年前

    仅接受菜单标记菜单项子菜单菜单项组作为孩子。 菜单项只接受disabled和key作为道具。除此之外,如果您使用自定义html标记,您将在控制台中遇到这些错误。

    而且,根据ant文档,我们需要在菜单级使用样式标记,而不是菜单项

    <Menu.Item key="3"  disabled={true}>Non clickable text </Menu.Item>
    
        2
  •  5
  •   Alejandro    6 年前

    空着试试 ItemGroup :

    <Menu.ItemGroup title="Non clickable text" />
    
        3
  •  2
  •   MobileVet    6 年前

    如图所示 here ,问题是您试图包含 <Divider /> 在您的菜单中,并且Menu有一个它将接受的子项的有限列表。 <分隔符/>

    如果您移除 < 元素,那些警告就会消失。其实我自己也碰到过。

    将引用更改为

    <Menu.Divider />
    

        4
  •  1
  •   Roman Haivaronski    6 年前

    我不得不用react创建自定义菜单,并使用标准标签标签:

     <ul style={{ display: 'flex', listStyle: 'none' }}>
            <li><Link to='/'>Home</Link></li>
            <Divider
              style={{width: 0}} 
              type="vertical" />       
            <li><Link to='/books'>Books</Link></li>
            <Divider
              style={{width: 0}} 
              type="vertical"/>
    
          <li><Link to='/authors'>Authors</Link></li>  // clickable menu 
          <Divider
              style={{width: 0}} 
              type="vertical"/>
          <li><label>Example</label></li>   // some non-clickable text
          </ul>
    

    <Menu>
        <Menu.Item><a href="/Page1"> Page 1</a></Menu.Item>
        <Menu.Item><a href="/Page2"> Page 2</a></Menu.Item>
        <Menu.Item> some non-clickable text </Menu.Item>
    </Menu>