Tengo múltiples menús desplegables y quiero alternar cuando el mouse se desplaza sobre uno de ellos, pero no sucede el enlace de mi código: Creo que el enlace puede enviar Id y tener un menú desplegable abierto, pero quiero una buena respuesta

en lugar de tener una bandera desplegable Abierta, debe tener curDropdownID, puede ser astring o un número, en este momento lo asumo como una cadena, por lo que su estado es como

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

necesita tener la función isopen para decidir si un menú está abierto o no como se muestra a continuación:

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

ahora alternar la función del menú debe tomar id como argumento para alternar el menú como

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

y tu UncontrolledDropdown se debe representar como

  {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;