Estoy usando material ui y tengo un componente de selección múltiple. Tengo 2 problemas, que simplemente no puedo resolver:
¿Podría alguien señalarme en la dirección correcta?
Aquí está mi código:
<FormControl id={title} className={classes.formControl} variant="filled" size="small" > <InputLabel id={title}> {title} </InputLabel> <Select MenuProps={ PaperProps: { style: { maxHeight: ITEM_HEIGHT * 4 + ITEM_PADDING_TOP, width: 270, }, }, variant: "menu", getContentAnchorEl: null, } disableUnderline labelId={title} id={includes} multiple value={selectedValues} input={<Input />} renderValue={(selected) => ( <div> {selected.map((value) => ( <Chip key={value} label={value}/> ))} </div> )} > <MenuItem key={filter.categoryNameWebsite} value={filter.categoryNameWebsite} > //some logic </MenuItem> </Select> </FormControl> EDITAR:
Pregunta 1: Con la ayuda de NearHuscarl, descubrí que el salto no está relacionado con la interfaz de usuario del material. Mi problema fue: con cada elemento que se seleccionó del menú desplegable, la ruta de la URL cambió. Como estoy usando el enrutador next.js ( useRouter ), la opción "desplazarse" es "verdadera" de forma predeterminada. Tuve que cambiarlo a "falso". Ahora el salto finalmente se ha ido :)
Pregunta 2: Consulte la solución proporcionada por NearHuscarl.
Para responder a tu segunda pregunta. Si desea mostrar/ocultar la lista de MenuList al pasar el cursor por encima o por debajo del cursor, puede adjuntar los oyentes para saber cuándo el usuario pasa el cursor por encima de la Input y deja la Popover como se muestra a continuación:
<Select open={open} onMouseEnter={handleOpen} onClose={handleClose} onOpen={handleOpen} MenuProps={{ PaperProps: { onMouseLeave: handleClose, {...} }} {...} >