Table des matières
Pourquoi utiliser le livre de contes pour une bibliothèque de composants?
Configuration du livre de contes
Organisation de votre bibliothèque de composants
Écrire des histoires utiles
Ajout de documents et de contrôles
Meilleures pratiques pour le maintenir maintenable
Réflexions finales
Maison interface Web Tutoriel H5 Construire une bibliothèque de composants avec livre de contes

Construire une bibliothèque de composants avec livre de contes

Aug 01, 2025 am 06:35 AM

Commencez par installer Storybook à l'aide de NPX Storybook @ Derniter init pour configurer des dépendances, des configurations et des exemples d'histoires. 2. Organisez des composants dans des dossiers isolés avec des histoires, des tests et des fichiers d'index colocalisés pour l'évolutivité. 3. Écrivez des histoires complètes couvrant divers états (chargement, handicapés, etc.), en utilisant des args et des contrôles pour la manipulation interactive des accessoires. 4. Activer les essentiels addon pour générer des onglets de documents, des contrôles visuels, des actions et des bascules de la fenêtre pour un guide de style de vie. 5. Suivez les meilleures pratiques: utilisez une dénomination cohérente (par exemple, composants / bouton), gardez les histoires à jour, adoptez proprement les composants et exportations. 6. Améliorer avec les tests A11Y, chromatique pour la régression visuelle et publier en ligne pour l'accès à l'équipe. 7. Traitez la bibliothèque comme un système en évolution - commencez petit avec des composants de base et ajoutez de manière itérative des documents, des tests et des jetons de conception pour construire un langage d'interface utilisateur partagé et durable entre les équipes.

Vous songez donc à construire une bibliothèque de composants - un excellent mouvement. Si vous travaillez dans une équipe ou sur plusieurs projets, une bibliothèque de composants solides maintient votre interface utilisateur cohérente, accélère le développement et facilite les tests. L'un des meilleurs outils pour vous aider à créer et à présenter cette bibliothèque? Livre de contes.

Voici comment commencer et ce qui compte réellement lors de la configuration.


Pourquoi utiliser le livre de contes pour une bibliothèque de composants?

Le livre de contes vous donne un bac à sable pour développer des composants d'interface utilisateur isolément. Cela signifie pas besoin de tourner votre application complète juste pour modifier un bouton. Vous écrivez des histoires pour chaque composant, qui sont essentiellement des états ou des cas d'utilisation différents (comme un bouton de chargement, un bouton désactivé, etc.).

Ce n'est pas seulement pour les développeurs - des concepteurs, QA et les produits peuvent l'utiliser pour voir ce qui est disponible et comment les choses se comportent. De plus, il s'intègre aux outils de test, aux documents et aux systèmes de conception.


Configuration du livre de contes

Si vous démarrez frais (ou ajoutez à un projet React, Vue ou Frontend existant), la manière la plus simple consiste à utiliser la CLI automatisée:

 NPX Storybook @ Derniter init

Ce sera:

  • Installez les dépendances du livre de contes
  • Configurer les paramètres de base ( main.js , preview.js )
  • Ajouter des exemples d'histoires
  • Configurez les scripts pour l'exécuter localement

Après la configuration, exécutez:

 NPM Run Storybook

Et vous verrez l'interface utilisateur par défaut avec des exemples de composants.


Organisation de votre bibliothèque de composants

La structure est importante. Une configuration de dossier propre rend votre bibliothèque évolutive.

Voici un modèle pratique:

 src /
├til composants /
│ ├fiquement / bouton /
│ │ ├ ├fique
│ │ ├ --met Button.stories.js
│ │ ├ ├fique
│ │ └fique
│ ├fique
│ │ ├fique
│ │ ├── modal.stories.js
│ │ └fique
│ └fique

Chaque composant a son propre dossier, avec son fichier d'histoire juste à côté. Cette co-localisation facilite la recherche et la mise à jour des histoires à mesure que le composant évolue.

Dans votre fichier .stories.js :

 // Button.stories.js
Exporter par défaut {
  Titre: «Composants / Button»,
  Composant: bouton,
};

exportation const primaire = {
  args: {
    Étiquette: «cliquez sur moi»,
    Primaire: vrai,
  },
};

Export const Disabled = {
  args: {
    Étiquette: «handicapé»,
    Désactivé: vrai,
  },
};

Maintenant, vous verrez «Button» sous «Composants» dans la barre latérale du livre de contes, avec deux états.


Écrire des histoires utiles

Ne montrez pas simplement le chemin heureux. Penser à:

  • Différents accessoires
  • States de chargement
  • Conditions d'erreur
  • Comportement réactif (le cas échéant)

Utilisez des args et des contrôles afin que les non-DEVS puissent modifier les accessoires dans l'interface utilisateur:

 Exporter par défaut {
  Titre: «Composants / entrée»,
  Composant: entrée,
  Argtypes: {
    variante: {
      Contrôle: «Sélectionner»,
      OPTIONS: [«Couchée», «REMPL», «Standard»],
    },
  },
};

Exporter const default = {
  args: {
    étiquette: «nom»,
    Placeholder: «Entrez votre nom»,
  },
};

Maintenant, vous obtenez une liste déroulante dans le panneau de commandes du livre de contes pour changer de variantes en direct.


Ajout de documents et de contrôles

Le livre de contes génère automatiquement un onglet «Docs» pour chaque composant à l'aide de MDX ou de génération de DOC intégrée.

Activez-le dans main.js :

 // .storybook / main.js
module.exports = {
  Histoires: ['../src/components/**/*.stories.@(js|jsx|ts|tsx)'],
  Addons: [
    '@ Storybook / Addon-Essentials', // Comprend des contrôles, des documents, des actions, etc.
  ],
};

Avec @storybook/addon-essentials , vous obtenez:

  • Contrôles visuels des accessoires
  • Docs générés automatiquement
  • Panneau d'actions pour voir les événements
  • Commutation de la fenêtre (mobile / bureau)
  • Antécédents

Cela transforme votre livre de contes en guide de style vivant.


Meilleures pratiques pour le maintenir maintenable

  • Noms Stories cohérente - Utilisez une hiérarchie claire comme Components/Button ou Forms/Input
  • Utilisez des noms d'histoire descriptifs - «avec icône» est meilleur que «Exemple 2»
  • Gardez les histoires synchronisées avec le code - des histoires obsolètes induites en erreur les utilisateurs
  • Utiliser TypeScript - Améliore la saisie semi-automatique et réduit les erreurs dans les histoires
  • Composants d'exportation proprement - facilitez l'importation de votre bibliothèque ailleurs

Considérez également:

  • Ajout de tests d'accessibilité avec @storybook/addon-a11y
  • Intégrer à chromatique pour les tests de régression visuelle
  • Publier votre livre de contes en ligne (pages GitHub, Vercel, etc.) pour l'accès à l'équipe

Réflexions finales

Construire une bibliothèque de composants avec un livre de contes ne concerne pas simplement l'affichage des boutons. Il s'agit de créer une langue partagée pour votre équipe. Lorsque tout le monde peut voir ce qui est disponible et comment cela fonctionne, vous réduisez la duplication et améliorez la qualité.

Commencez petit - quelques composants de base avec de bonnes histoires. Répéter. Ajoutez des documents, des tests et des jetons de conception au fil du temps.

Et rappelez-vous: une bibliothèque de composants n'est jamais «terminée». Mais avec Storybook, vous avez le bon outil pour le développer de manière durable.

Fondamentalement, commencez simplement à construire - le reste suit.

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!

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

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel PHP
1525
276
Pourquoi mon image n'apparaît-elle pas dans HTML? Pourquoi mon image n'apparaît-elle pas dans HTML? Jul 28, 2025 am 02:08 AM

L'image non affichée est généralement causée par un mauvais chemin de fichier, un nom ou une extension de fichier incorrect, des problèmes de syntaxe HTML ou un cache de navigateur. 1. Assurez-vous que le chemin SRC est cohérent avec l'emplacement réel du fichier et utilisez le chemin relatif correct; 2. Vérifiez si le cas de fichier et l'extension correspondent exactement et vérifiez si l'image peut être chargée en entrant directement l'URL; 3. Vérifiez si la syntaxe TAG IMG est correcte, assurez-vous qu'il n'y a pas de caractères redondants et que la valeur d'attribut ALT est appropriée; 4. Essayez de forcer l'actualisation de la page, de nettoyer le cache ou d'utiliser le mode incognito pour éliminer les interférences du cache. Le dépannage dans cet ordre peut résoudre la plupart des problèmes d'affichage d'image HTML.

CMS sans tête et génération de sites statiques (SSG) avec Astro CMS sans tête et génération de sites statiques (SSG) avec Astro Jul 26, 2025 am 07:31 AM

Utilisez des CM sans tête en conjonction avec la génération de sites statiques d'Astro (SSG) pour créer des sites Web hautes performances et axés sur le contenu. 2.Astro obtient du contenu de la CMS sans tête (comme la santé mentale, le contenu, la strapi, le wordpress ou les datocms) via des API et des pré-rendements en tant que pages statiques. 3. Utilisez getStaticPaths () pour générer le chemin de la page, obtenir des données via les appels CMSAPI et séparer le contenu de la frontale. 4. Les avantages comprennent d'excellentes performances (chargement rapide, SEO-friendly), une expérience d'édition amicale, une flexibilité architecturale, une haute sécurité et une évolutivité. 5. Les mises à jour du contenu nécessitent une reconstruction du site, et vous pouvez utiliser CMSWebHook pour toucher

Comment utiliser les boutons radio dans HTML5? Comment utiliser les boutons radio dans HTML5? Jul 21, 2025 am 01:08 AM

La clé de l'utilisation de boutons radio dans HTML5 est de comprendre comment ils fonctionnent et d'organiser correctement la structure du code. 1. L'attribut de nom de chaque bouton radio doit être le même pour obtenir une sélection mutuellement exclusive; 2. Utilisez des balises d'étiquette pour améliorer l'accessibilité et cliquer sur l'expérience; 3. Il est recommandé d'envelopper chaque option dans une div ou un étiquette pour améliorer la clarté structurelle et le contrôle du style; 4. Définissez les sélections par défaut via l'attribut vérifié; 5. La valeur de la valeur doit être concise et significative, ce qui est pratique pour le traitement de soumission de formulaire; 6. Le style peut être personnalisé via CSS, mais la fonction doit être assurée d'être normale. La maîtrise de ces points clés peut éviter efficacement des problèmes courants et améliorer l'efficacité de l'utilisation.

H5 Barcode et QR Code Scanning avec GetUserMedia H5 Barcode et QR Code Scanning avec GetUserMedia Jul 20, 2025 am 02:03 AM

La page H5 réalise les fonctions de numérisation de code-bar et de code QR, principalement en appelant GetUserMedia pour obtenir des autorisations de caméra et la combiner avec la bibliothèque de décodage pour une identification en temps réel. 1. Utilisez d'abord GetUserMedia pour obtenir des autorisations de caméra et lier le flux vidéo à la balise. Faites attention aux différences dans l'environnement HTTPS et la prise en charge des appareils; 2. En interceptant les trames vidéo et en extraction des données d'image, contrôlez la fréquence de reconnaissance pour optimiser les performances; 3. Utilisez des bibliothèques de décodage telles que le zxing ou les quaggajs pour la reconnaissance d'image, il est recommandé d'empêcher les résultats de reconnaissance; 4. En termes de compatibilité, les contraintes vidéo peuvent être définies pour optimiser l'adaptation des périphériques et améliorer l'expérience utilisateur via des invites d'interface utilisateur; 5. En termes d'optimisation des performances, il est recommandé d'utiliser un travailleur Web pour effectuer des tâches de décodage pour éviter de bloquer le principal

API H5 Web MIDI pour les surfaces de contrôle avancées API H5 Web MIDI pour les surfaces de contrôle avancées Jul 19, 2025 am 03:04 AM

Pour utiliser WebMidiapi pour créer une interface de contrôle avancée, vous devez d'abord obtenir des autorisations de périphérique, demander l'autorisation via Navigator.RequestMidiaCcess () et les périphériques d'entrée et de sortie de processus; Deuxièmement, écoutez ou envoyez des messages MIDI, tels que l'écoute des opérations de bouton via l'entrée.addeventListener, et envoyez des instructions de contrôle LED via la sortie.Send; Vous devez également vous adapter à différents contrôleurs, établir des fichiers de configuration ou fournir des fonctions de mappage définies par l'utilisateur; Enfin, faites attention aux compétences en développement telles que la réponse en temps réel, la gestion des erreurs, les outils de débogage et la correspondance des numéros de canal.

La balise  est-elle toujours utilisée dans HTML5? La balise est-elle toujours utilisée dans HTML5? Jul 21, 2025 am 02:47 AM

Oui, il fait partie de HTML5, mais son utilisation a progressivement diminué et est controversée. Utilisé pour combiner le titre principal avec le sous-titre afin que seul le plus haut niveau de titres soit identifié dans le plan du document; Par exemple, le titre principal et le sous-titre peuvent être enveloppés pour indiquer qu'ils ne sont que des titres auxiliaires plutôt que des titres de chapitre indépendants; Cependant, les raisons pour lesquelles ils ne sont plus largement utilisées incluent: 1. Les lecteurs du navigateur et de l'écran leur sont un support incohérent, 2. Il existe des alternatives plus simples telles que l'utilisation de CSS pour contrôler les styles, 3. L'algorithme de contour du document HTML n'est pas largement pris en charge; Malgré cela, il peut toujours être pris en compte dans des sites Web ou des documents avec des exigences sémantiques élevées; Alors que dans la plupart des cas, les développeurs ont tendance à utiliser un seul, à gérer les styles via CSS et à maintenir des niveaux de titre clairs.

L'importance du HTML sémantique pour le référencement et l'accessibilité L'importance du HTML sémantique pour le référencement et l'accessibilité Jul 30, 2025 am 05:05 AM

SémantichtmlimprovesbothseoandaccessibilityByusing a été ultime

API d'informations réseau H5 pour le chargement adaptatif API d'informations réseau H5 pour le chargement adaptatif Jul 23, 2025 am 04:15 AM

L'API NetworkInformation de H5 peut optimiser les stratégies de chargement en jugeant le type de réseau. ① Utilisez Navigator.Connection pour obtenir le type de réseau et l'état en ligne; ② décider de charger des ressources à haute définition ou un contenu léger en fonction des valeurs efficaces (telles que lent-2g, 4g, 5g); ③ Ajustez dynamiquement la stratégie de chargement en écoutant des événements de changement; ④ Faites attention à des problèmes tels que la compatibilité, les restrictions limitées de support iOS et de mode de confidentialité.

See all articles