React onClick 事件在 bootstrap 下拉菜单上不起作用

React onClick event is not working on bootstrap dropdown menu

提问人:Apeksha Joshi 提问时间:10/18/2023 更新时间:10/18/2023 访问量:18

问:

我正在尝试在 React 中实现一个下拉菜单。 它位于我的组件内部。<Dropdown></Dropdown>return()

<Dropdown>
    <Dropdown.Toggle className="btn btn-dark">
        <i onClick={() => handleToggle()}>{icons['Menu']}</i>
    </Dropdown.Toggle>

     <Dropdown.Menu className="nav-container border-secondary-subtle border border-3">
          <Dropdown.Item href="#" className="nav-items">
              Dashboard
          </Dropdown.Item>
          <Dropdown.Item href="#" className="nav-items">
              Courses
          </Dropdown.Item>
     </Dropdown.Menu>
</Dropdown>
import { Dropdown } from "react-bootstrap";
import React, { useState } from 'react';
const [showDropdown, setShowDropdown] = useState(false);
    const handleToggle = () =>{
        setShowDropdown(!showDropdown);
        console.log(showDropdown)
    }

当前行为:单击“菜单”图标后,Dropdown.Menu 选项可见。但是再次单击菜单图标时,它不会被隐藏。

我尝试将 onClick 设置为 Dropdown.Toggle 和 Dropdown。两者都不起作用。但是在控制台中,我可以看到每次单击时 showDropdown 翻转的值。

我也在onClick = {()=>setShowDropdown(!showDropdown)} 中尝试过这个

我在几个例子中看到他们没有使用任何eventListeners,但这对我也不起作用。

此外,我希望在单击任何菜单项后菜单不可见。

任何帮助将不胜感激。谢谢。

reactjs jsx 下拉列表 切换 react-bootstrap

评论


答:

0赞 Apeksha Joshi 10/18/2023 #1

我想通了这个问题。我在课堂上加了一个.删除此内容后,下拉列表将按预期工作,没有任何侦听器。display:blocknav-container