Maison > interface Web > js tutoriel > Composants MUI : votre guide complet pour créer des interfaces utilisateur React modernes

Composants MUI : votre guide complet pour créer des interfaces utilisateur React modernes

Susan Sarandon
Libérer: 2024-12-29 17:53:11
original
343 Les gens l'ont consulté

Introduction aux composants MUI

Material-UI (MUI) est une bibliothèque d'interface utilisateur React populaire qui simplifie la création d'applications Web réactives et visuellement attrayantes. Avec un riche ensemble de composants prédéfinis comme Autocomplete, Stack, Select, Card, Accordion, Stepper, et Badge, MUI permet de gagner du temps de développement tout en garantissant la cohérence et la réactivité de la conception.

Ce guide explore comment utiliser et personnaliser efficacement ces composants, avec des exemples pratiques pour vous aider à les intégrer de manière transparente dans vos projets. Que vous soyez débutant ou développeur expérimenté, cet article améliorera votre compréhension de MUI et de ses capacités.

Conditions préalables

Avant de plonger dans les composants MUI, assurez-vous que votre environnement de développement est prêt. Ce guide suppose que vous avez une compréhension de base de React et que vous avez déjà configuré une application React. Si vous démarrez à zéro ou préférez une configuration plus rapide et légère, envisagez d'utiliser Vite, un outil de construction moderne pour les projets front-end. Pour connaître les étapes détaillées de configuration de Vite avec React, reportez-vous à notre Guide du débutant sur l'utilisation de Vite avec React.

De plus, assurez-vous d'avoir Material-UI (MUI) installé dans votre projet. Vous pouvez le faire en exécutant la commande suivante :

npm install @mui/material @emotion/react @emotion/styled
Copier après la connexion
Copier après la connexion
Copier après la connexion

Une fois votre application React configurée, la prochaine étape consiste à intégrer MUI

Configuration du thème

Material-UI (MUI) fournit un système de thèmes puissant qui garantit la cohérence de la conception entre tous les composants de votre application. Un thème personnalisé contrôle les couleurs, la typographie, l'espacement et bien plus encore, garantissant ainsi l'alignement avec votre marque.

Voici comment configurer un thème de base dans MUI :

  1. Importer les utilitaires requis : utilisez createTheme pour définir votre thème personnalisé et ThemeProvider pour l'appliquer globalement.

  2. Définissez votre thème : spécifiez les valeurs de la palette, de la typographie et d'autres propriétés de conception.

  3. Enveloppez votre application : utilisez ThemeProvider pour transmettre le thème à l'ensemble de votre application ou à des sections spécifiques.

Exemple : création et application d'un thème personnalisé

import React from 'react';
import { createTheme, ThemeProvider } from '@mui/material/styles';
import { Button } from '@mui/material';

// Define a custom theme
const theme = createTheme({
  palette: {
    primary: {
      main: '#1976d2', // Primary color
    },
    secondary: {
      main: '#dc004e', // Secondary color
    },
  },
  typography: {
    fontFamily: 'Roboto, Arial, sans-serif',
  },
});

function App() {
  return (
    <ThemeProvider theme={theme}>
      <Button variant="contained" color="primary">
        Primary Button
      </Button>
      <Button variant="outlined" color="secondary">
        Secondary Button
      </Button>
    </ThemeProvider>
  );
}

export default App;
Copier après la connexion
Copier après la connexion
Copier après la connexion

Conseils de personnalisation :

  • Extension du thème : ajoutez des propriétés de conception supplémentaires, telles que l'espacement ou les points d'arrêt, pour adapter le thème aux besoins de votre application.
  • Utilisation de sx Prop : pour des personnalisations rapides par composant, le sx prop de MUI vous permet de remplacer les styles en ligne tout en adhérant au thème.

En configurant un thème, vous rationalisez le processus de conception, maintenez la cohérence et simplifiez les futures mises à jour de l'apparence de votre application.

Composants clés de MUI

MUI propose une variété de composants pour rationaliser le développement de l'interface utilisateur. Ci-dessous, nous explorons certains des composants les plus couramment utilisés, leur utilisation de base et leurs options de personnalisation.

1. Remplissage automatique MUI

La saisie semi-automatique améliore les saisies utilisateur en fournissant des suggestions à partir d'une liste prédéfinie.

Exemple de base :

npm install @mui/material @emotion/react @emotion/styled
Copier après la connexion
Copier après la connexion
Copier après la connexion

Personnalisation :

  • Activez la saisie gratuite avec freeSolo.
  • Options de groupe à l'aide de groupBy.
  • Récupérer les options de manière dynamique pour l'évolutivité.

MUI Components: Your Complete Guide to Building Modern React UIs

2. Pile MUI

Stack organise les composants selon une disposition unidimensionnelle (horizontale ou verticale).

Exemple de base :

import React from 'react';
import { createTheme, ThemeProvider } from '@mui/material/styles';
import { Button } from '@mui/material';

// Define a custom theme
const theme = createTheme({
  palette: {
    primary: {
      main: '#1976d2', // Primary color
    },
    secondary: {
      main: '#dc004e', // Secondary color
    },
  },
  typography: {
    fontFamily: 'Roboto, Arial, sans-serif',
  },
});

function App() {
  return (
    <ThemeProvider theme={theme}>
      <Button variant="contained" color="primary">
        Primary Button
      </Button>
      <Button variant="outlined" color="secondary">
        Secondary Button
      </Button>
    </ThemeProvider>
  );
}

export default App;
Copier après la connexion
Copier après la connexion
Copier après la connexion

Personnalisation :

  • Changez la direction (ligne, colonne) et l'espacement.
  • Utilisez des accessoires réactifs pour les mises en page dynamiques.

MUI Components: Your Complete Guide to Building Modern React UIs

3. Sélection MUI

Select est un composant déroulant pour les choix des utilisateurs.

Exemple de base :

import React from 'react';
import { Autocomplete, TextField } from '@mui/material';

const options = ['Option 1', 'Option 2', 'Option 3'];

function AutocompleteExample() {
  return (
    <Autocomplete
      options={options}
      renderInput={(params) => <TextField {...params} label="Select an Option" />}
    />
  );
}

export default AutocompleteExample;
Copier après la connexion
Copier après la connexion

Personnalisation :

  • Ajoutez des images à l'aide de CardMedia.
  • Incluez des actions avec CardActions.

MUI Components: Your Complete Guide to Building Modern React UIs

5. Accordéon MUI

L'accordéon est idéal pour les sections pliables comme les FAQ.

Exemple de base :

import React from 'react';
import { Stack, Button } from '@mui/material';

function StackExample() {
  return (
    <Stack direction="row" spacing={2}>
      <Button variant="contained">Button 1</Button>
      <Button variant="outlined">Button 2</Button>
    </Stack>
  );
}

export default StackExample;
Copier après la connexion

Personnalisation :

  • Utilisez expand et onChange pour les états contrôlés.
  • Supprimez le remplissage avec DisableGutters.

MUI Components: Your Complete Guide to Building Modern React UIs

6. MUI Stepper

Stepper crée des flux de travail ou des processus en plusieurs étapes.

Exemple de base :

import React, { useState } from 'react';
import { Select, MenuItem, FormControl, InputLabel } from '@mui/material';

function SelectExample() {
  const [value, setValue] = useState('');

  const handleChange = (event) => setValue(event.target.value);

  return (
    <FormControl fullWidth>
      <InputLabel>



<p><strong>Customization:</strong>  </p>

<ul>
<li>Enable multiple selections with multiple.
</li>
<li>Render custom items with renderValue.</li>
</ul>

<p><img src="https://img.php.cn/upload/article/000/000/000/173546599689834.jpg" alt="MUI Components: Your Complete Guide to Building Modern React UIs" /></p>

<h4>
  
  
  <strong>4. MUI Card</strong>
</h4>

<p>Card displays structured content like text, images, and actions.</p>

<p><strong>Basic Example:</strong><br>
</p>

<pre class="brush:php;toolbar:false">import React from 'react';
import { Card, CardContent, Typography } from '@mui/material';

function CardExample() {
  return (
    <Card>
      <CardContent>
        <Typography variant="h5">Card Title</Typography>
        <Typography variant="body2">Card Content</Typography>
      </CardContent>
    </Card>
  );
}

export default CardExample;
Copier après la connexion

Personnalisation :

  • Ajoutez des icônes aux étapes.
  • Stylez les étapes actives ou terminées avec sx.

![MUI Stepper(https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l6oockmr57d8wgj659hy.png)

7. Insigne MUI

Le badge met en évidence les notifications ou les décomptes, généralement sur des icônes.

Exemple de base :

import React from 'react';
import { Accordion, AccordionSummary, AccordionDetails, Typography } from '@mui/material';
import ExpandMoreIcon from '@mui/icons-material/ExpandMore';

function AccordionExample() {
  return (
    <Accordion>
      <AccordionSummary expandIcon={<ExpandMoreIcon />}>
        <Typography>Accordion Title</Typography>
      </AccordionSummary>
      <AccordionDetails>
        <Typography>Accordion Content</Typography>
      </AccordionDetails>
    </Accordion>
  );
}

export default AccordionExample;
Copier après la connexion

Personnalisation :

  • Changez la position et la couleur du badge.
  • Utilisez max pour définir un plafond sur les grands nombres.

MUI Components: Your Complete Guide to Building Modern React UIs

Ces composants clés de MUI constituent une base pour créer des interfaces intuitives et réactives. Avec des options de personnalisation et des exemples pratiques, vous pouvez facilement les adapter aux besoins de votre projet.

Meilleures pratiques d'utilisation des composants MUI

Pour maximiser l'efficacité et la maintenabilité de vos projets avec Material-UI (MUI), tenez compte des bonnes pratiques suivantes :

1. Tirez parti du thème pour la cohérence

  • Pourquoi : L'utilisation du système de thèmes de MUI garantit l'uniformité de la conception, réduisant ainsi les styles redondants et améliorant la maintenabilité.
  • Comment : Définissez un thème personnalisé avec createTheme et appliquez-le globalement avec ThemeProvider. Cela garantit que les couleurs, la typographie et l’espacement sont cohérents sur tous les composants.
  • Exemple : Utilisez le thème pour ajuster les couleurs primaires et secondaires ou les styles de typographie dans votre application.

2. Utilisez le sx Prop pour une personnalisation rapide

  • Pourquoi : La prop sx fournit un moyen concis d'appliquer des styles directement aux composants sans fichiers CSS externes.
  • Comment : Transmettez des objets de style ou des valeurs basées sur un thème à l'accessoire sx pour un style flexible en ligne.
  • Exemple :
npm install @mui/material @emotion/react @emotion/styled
Copier après la connexion
Copier après la connexion
Copier après la connexion

3. Optimisez les performances avec le chargement différé

  • Pourquoi : Le chargement paresseux réduit le temps de chargement initial en rendant les composants uniquement lorsque cela est nécessaire.
  • Comment : Utilisez lazy() et Suspense de React pour charger les composants MUI à la demande.
  • Exemple :
import React from 'react';
import { createTheme, ThemeProvider } from '@mui/material/styles';
import { Button } from '@mui/material';

// Define a custom theme
const theme = createTheme({
  palette: {
    primary: {
      main: '#1976d2', // Primary color
    },
    secondary: {
      main: '#dc004e', // Secondary color
    },
  },
  typography: {
    fontFamily: 'Roboto, Arial, sans-serif',
  },
});

function App() {
  return (
    <ThemeProvider theme={theme}>
      <Button variant="contained" color="primary">
        Primary Button
      </Button>
      <Button variant="outlined" color="secondary">
        Secondary Button
      </Button>
    </ThemeProvider>
  );
}

export default App;
Copier après la connexion
Copier après la connexion
Copier après la connexion

4. Préférez le Responsive Design avec des points d'arrêt

  • Pourquoi : Les composants réactifs garantissent une expérience utilisateur transparente sur tous les appareils.
  • Comment : Utilisez le système Grid ou l'accessoire sx avec des valeurs réactives pour les points d'arrêt comme xs, sm, md, etc.
  • Exemple :
import React from 'react';
import { Autocomplete, TextField } from '@mui/material';

const options = ['Option 1', 'Option 2', 'Option 3'];

function AutocompleteExample() {
  return (
    <Autocomplete
      options={options}
      renderInput={(params) => <TextField {...params} label="Select an Option" />}
    />
  );
}

export default AutocompleteExample;
Copier après la connexion
Copier après la connexion

5. Évitez la surutilisation des styles en ligne

  • Pourquoi : Bien que l'accessoire sx soit puissant, des styles en ligne excessifs peuvent encombrer le code et réduire la lisibilité.
  • Comment : Utilisez l'API makeStyles ou styled pour un style réutilisable et organisé.

6. Explorez les API de composants pour les fonctionnalités avancées

  • Pourquoi : Les composants MUI offrent des API étendues qui permettent des personnalisations avancées.
  • Comment : Consultez régulièrement la documentation MUI pour exploiter des accessoires tels que MenuProps dans Select ou renderInput dans Autocomplete pour des besoins spécifiques.

7. Assurer l'accessibilité (A11y)

  • Pourquoi : L'accessibilité garantit que votre application est utilisable par tous les utilisateurs, y compris ceux handicapés.
  • Comment : Utilisez le HTML sémantique et les accessoires d'accessibilité tels que les attributs aria-*. Par exemple, ajoutez aria-expanded à Accordion ou aria-labelledby pour les éléments de dialogue.

8. Tester les performances des composants en production

  • Pourquoi : Certains composants MUI peuvent avoir un impact significatif sur les performances, en particulier dans les grandes applications.
  • Comment : Utilisez des outils tels que React DevTools et Lighthouse pour analyser les performances et identifier les goulots d'étranglement.

9. Restez à jour avec la documentation MUI

  • Pourquoi : MUI est activement maintenu, avec de nouvelles fonctionnalités et améliorations régulièrement introduites.
  • Comment : Consultez régulièrement la documentation officielle pour connaître les mises à jour, les meilleures pratiques et les nouvelles versions.

10. Réutiliser les composants pour l'évolutivité

  • Pourquoi : La réutilisation des composants réduit les efforts de développement et garantit la cohérence.
  • Comment : Résumez les modèles d'interface utilisateur courants dans des composants réutilisables (par exemple, des boutons, des formulaires, des cartes) pour éviter le code répétitif.

En suivant ces bonnes pratiques, vous pouvez créer des applications efficaces, évolutives et maintenables tout en exploitant tout le potentiel de MUI.

Conclusion

Les composants Material-UI (MUI) simplifient le processus de création d'applications Web réactives et modernes et d'un système de thèmes puissant. En suivant les bonnes pratiques décrites dans ce guide, vous pouvez créer des interfaces cohérentes, accessibles et hautement personnalisables qui améliorent l'expérience utilisateur. Que vous soyez débutant ou développeur expérimenté, MUI fournit les outils nécessaires pour élever efficacement vos projets React.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal