Construire une bibliothèque de composants avec livre de contes
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
ouForms/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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

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

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

Clothoff.io
Dissolvant de vêtements AI

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 !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

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.

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

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.

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

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.

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.

SémantichtmlimprovesbothseoandaccessibilityByusing a été ultime

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é.
