Je construis une application en utilisant Material-UI
, jusqu'ici tout va bien. J'essaie de créer un composant à l'aide d'un composant Accordion
, mais j'obtiens une erreur en essayant de l'importer:
import React from 'react'; // import { // Accordion, // AccordionSummary, // AccordionDetails // } from '@material-ui/core'; import Accordion from '@material-ui/core/Accordion'; import AccordionSummary from '@material-ui/core/AccordionSummary'; import AccordionDetails from '@material-ui/core/AccordionDetails'; import ExpandMoreIcon from '@material-ui/icons/ExpandMore'; const JobCard = () => { return( <Accordion expanded={true}> <AccordionSummary expandIcon={<ExpandMoreIcon />} > test </AccordionSummary> <AccordionDetails> test </AccordionDetails> </Accordion> ); } export default JobCard;
J'ai essayé de l'importer à la fois via une importation par défaut et nommée, mais le résultat est le même.
le composant:
Module not found: Can't resolve '@material-ui/core/Accordion' in [path]
Tous mes autres composants fonctionnent correctement avec les composants Material-UI importés.
Suis-je en train de manquer quelque chose que je fais mal? Quelqu'un a-t-il rencontré un tel problème?
5 Réponses :
ExpansionPanel a été renommé Accordion . Avec votre erreur, il semble que vous utilisiez la version 4.10.2
(ou inférieure) de material-ui-core.
Utilisez la version 4.11.0
ou supérieure de material-ui-core .
Installer Material UI Core
npm i @material-ui/core
Donc, ce sera @material-ui/core@4.11.0
Ensuite, son fonctionnement. S'amuser!!
Ou npm install @material-ui/core@latest
Le composant Material-UI Accordion (anciennement ExpansionTable) ne sera pas importé car il a été renommé, donc son problème de mise à jour, donc pour mettre à jour Material Ui et d'autres packages dans votre dossier, exécutez la commande
npm install
Les dépendances obsolètes seront répertoriées
mise à jour npm
ou
npm install react@latest react-dom@latest
pour mettre à jour un package spécifique, puis exécutez cette commande pour installer un package spécifique
npm update "react" "react-dom"
ou
npm outdated
pour installer tous les packages
J'ai eu essentiellement le même problème. L'erreur était:
"Impossible de résoudre '@ material-ui / icons / ExpandMore'"
Après avoir installé les éléments suivants:
"@material-ui/core": "^4.11.0", "@material-ui/icons": "^4.9.1", "avatar": "^0.1.0", "clsx": "^1.1.1", "jquery": "^3.5.1", "material-ui": "^0.20.2", "react": "^16.14.0", "react-dom": "^16.14.0", "react-ga": "^2.7.0", "react-scripts": "1.0.17"
J'ai exécuté la npm update
et TOUT ÉTAIT BIEN :)
Gardez à l'esprit que bon nombre de ces composants étaient déjà installés. Les nouveaux que j'ai installés en fonction de l'erreur sont: les 3 se matérialisent, avatar et clsx. Ensuite, la mise à jour npm a apporté ces deux composants de réaction
Le nom d' Accordion
a été changé en ExpansionPanel
récemment, alors importez comme ceci:
import Accordion from '@material-ui/core/ExpansionPanel'; import AccordionSummary from '@material-ui/core/ExpansionPanelSummary'; import AccordionDetails from '@material-ui/core/ExpansionPanelDetails'; import ExpandMoreIcon from '@material-ui/icons/ExpandMore';
Avez-vous essayé de réinstaller
@material-ui/core
ou de redémarrer le serveur Web? :RÉ