Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

483
Vistas
Los estilos Material-UI 5 DataGrid no están aislados entre componentes

Acabo de actualizar Material-UI v4 a v5 (ahora MUI). Si tengo un componente DataGrid y un componente como un componente Select (un MenuItem también tiene problemas), el componente Select no funcionará correctamente. Algunos estilos adicionales cargados por DataGrid interfieren con él.

El ejemplo que mostraré aquí es que los valores ya no son desplegables, sino que se enumeran horizontalmente, todos juntos. Tenga en cuenta que DataGrid está intencionalmente vacío para esta demostración.

Seleccione el menú desplegable que no funciona cuando existe DataGrid

A diferencia de la funcionalidad esperada como esta:

Seleccione el menú desplegable que funciona como se esperaba

He puesto el código en CodeSandbox

Tenga en cuenta que "@mui/x-data-grid": "^4.0.0" depende de "@material-ui/core": "^4.12.3" . Estaba/estoy incómodo con eso, pero lo tiene listado como una dependencia (a menos que me haya perdido algo en alguna parte).

¿Hay algo que me falta o hay un error en la versión más reciente de DataGrid que estoy usando? Por cierto, toda la funcionalidad de DataGrid en mi aplicación real funciona bien.

Para completar, también incluiré el código aquí:

 import React from "react"; import { render } from "react-dom"; import { DataGrid } from "@mui/x-data-grid"; import Select from "@mui/material/Select"; import MenuItem from "@mui/material/MenuItem"; function App() { return ( <div> <Select> <MenuItem value={10}>Ten</MenuItem> <MenuItem value={20}>Twenty</MenuItem> <MenuItem value={30}>Thirty</MenuItem> </Select> {/* with DataGrid, Select will shown options on one line */} {/* comment out DataGrid and the select will work */} <DataGrid rows={[]} columns={[]} /> </div> ); } render(<App />, document.querySelector("#root"));

El archivo package.json es:

 { "name": "mui-datagrid-isolation-issue", "version": "5.0.0", "description": "", "keywords": [], "main": "index.js", "dependencies": { "@emotion/react": "latest", "@emotion/styled": "latest", "@mui/material": "^5.0.1", "@mui/styles": "^5.0.1", "@mui/x-data-grid": "^4.0.0", "@material-ui/core": "^4.12.3", "react": "latest", "react-dom": "latest" } }
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Está usando v4 @mui/x-data-grid que usa JSS mientras que los componentes de MUI están en v5 que usa emoción. Los estilos JSS de la versión anterior anulan los estilos de emoción y conducen a un resultado inesperado.

Para solucionarlo, instale la próxima versión (v5) de @mui/x-data-grid para que sea compatible con MUI v5, y también elimine @material-ui/core v4 en su package.json .

 npm install @mui/x-data-grid@next

Siempre puede mirar el archivo package.json en la demostración de documentos para ver cómo se ve un proyecto en funcionamiento.

over 4 years ago · Santiago Trujillo Denunciar

0

Gracias por tu respuesta @NearHuscarl. No tengo la reputación para comentar. Me tomó un tiempo darme cuenta de esto, ya que los documentos en la página de demostración de MUI Data Grid Component todavía apuntan a npm install @mui/x-data-grid , lo que lleva a que se instale el paquete incorrecto para MUI5.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda