У меня есть несколько выпадающих меню, и я хочу переключаться при наведении курсора мыши на одну из них, но этого не происходит. Ссылка на мой код: ссылка, я думаю, может отправить Id и иметь, если для раскрывающегося списка, но я хочу хороший ответ

вместо флага dropdownOpen у вас должен быть curDropdownID, он может быть строковым или числовым, сейчас я принимаю его как строку, так что ваше состояние

this.state = { collapsed: true , curDropdownID: '' }; 

вам нужно иметь функцию isopen, чтобы решить, открыто меню или нет, как показано ниже:

 isOpen=(id)={amp}gt;{ return this.state.curDropDownID===id } 

теперь вы переключаете функцию меню, должны взять id в качестве аргумента для переключения меню, как

  toggle(id) { this.setState({curDropdownID:id}) } 

и ваш UncontrolledDropdown должен быть представлен как

  {amp}lt;UncontrolledDropdown id="show" nav inNavbar onMouseOver={()={amp}gt;{this.toggle('show')}} onMouseLeave={()={amp}gt;{this.toggle('')}} isOpen={this.isOpen('show')} {amp}gt; {amp}lt;DropdownToggle nav caret className="text-dark"{amp}gt; show {amp}lt;/DropdownToggle{amp}gt; {amp}lt;DropdownMenu right{amp}gt; {amp}lt;DropdownItem href='/Search'{amp}gt; Search {amp}lt;/DropdownItem{amp}gt; {amp}lt;/DropdownMenu{amp}gt; {amp}lt;/UncontrolledDropdown{amp}gt;