Cet article montre comment le livre de contes et le développement de bibliothèque de composants de réaction chromatique réagit, offrant une documentation améliorée, des tests de régression visuelle et une meilleure collaboration d'équipe.
Avantages clés:
Pourquoi choisir le livre de contes?
Le livre de contes est un atout précieux pour les ingénieurs, les chefs de produit et les parties prenantes. Il facilite le développement de la bibliothèque des composants, la promotion de la collaboration et la prévention des goulots d'étranglement architecturaux. Sa nature autonome permet une documentation complète des composants et une gestion des variations. Les caractéristiques clés incluent:
Ce guide couvre la configuration et la configuration du livre de contes dans un projet Create React App, une installation complémentaire, une création d'histoire, une génération de documentation automatisée et un déploiement Web.
Configuration et configuration du livre de contes:
Installation:
La méthode la plus efficace consiste à utiliser une seule commande dans le répertoire racine de votre projet:
npx storybook@latest init
Storybook détecte intelligemment vos dépendances de projet et optimise le processus d'installation. Reportez-vous à la page Frameworks du livre de contes pour les informations de compatibilité. L'installation manuelle est découragée en raison de conflits de dépendance potentiels.
Configuration:
La configuration du livre de contes, principalement gérée via main.js
, permet la personnalisation de la présentation de documentation, l'extension d'interface utilisateur via des modules complémentaires et même la configuration de WebPack. TypeScript est pris en charge nativement, mais l'architecture CSS nécessite une configuration distincte. Consultez le style et la documentation CSS pour plus de détails.
Créons un échantillon Créer une application React:
npx create-react-app my-scalable-component-library
Après avoir vérifié l'application (en utilisant npm run start
), installez le livre du scénario:
npx storybook@latest init
Confirmez les invites d'installation. Storybook sera lancé dans votre navigateur. Le dossier .storybook
(contenant des fichiers de configuration) et un dossier stories
(dans src
) seront ajoutés à votre projet. package.json
inclura de nouveaux scripts:
npx create-react-app my-scalable-component-library
Utiliser npm run storybook
pour le développement et npm run build-storybook
pour la publication. Le dossier storybook-static
contient le livre de contes publié. Envisagez d'ajouter ce dossier à votre .gitignore
.
Le fichier main.js
(exemple illustré ci-dessous) contrôle divers aspects:
npx storybook@latest init
La clé stories
spécifie les emplacements de l'histoire. La clé framework
varie par type de projet. La clé docs
permet une documentation automatique. Reportez-vous à la page de configuration du livre de contes pour les options avancées.
Les modules complémentaires du livre de contes:
Les modules complémentaires étendent les fonctionnalités du livre de contes. Ils sont classés comme basés sur l'interface utilisateur (apparence modifiant) et basés sur le prédéfini (Intégration des technologies). La page des intégrations répertorie les modules complémentaires disponibles. Les modules complémentaires par défaut de Storybook incluent:
@storybook/addon-links
: lien d'histoire pour le prototypage. @storybook/addon-essentials
: une collection de modules complémentaires essentiels. @storybook/preset-create-react-app
: Améliore l'intégration de l'ARC. @storybook/addon-onboarding
: fournit une visite guidée. @storybook/addon-interactions
: facilite les tests d'interaction. pour ajouter le module complémentaire d'accessibilité:
"storybook": "storybook dev -p 6006", "build-storybook": "storybook build"
Ensuite, incluez-le dans main.js
addons
Array.
Écriture et documentation des histoires de composants:
Une histoire représente généralement un composant et ses variations. Ce sont des fichiers dynamiques (réagir, marquer ou les deux), recevant des paramètres (accessoires) pour générer des variations.
Examinons une histoire Button
histoire:
/** @type { import('@storybook/react-webpack5').StorybookConfig } */ const config = { stories: ["../src/**/*.mdx", "../src/**/*.stories.@(js|jsx|mjs|ts|tsx)"], addons: [ "@storybook/addon-links", "@storybook/addon-essentials", "@storybook/preset-create-react-app", "@storybook/addon-onboarding", "@storybook/addon-interactions", ], framework: { name: "@storybook/react-webpack5", options: {}, }, docs: { autodocs: "tag", }, statistics: ["../public"], }; export default config;
L'exportation par défaut définit le composant principal et les paramètres. Les paramètres fournissent des métadonnées. Les balises permettent une documentation générée automatiquement. argTypes
Définir le comportement de l'argument. Nommé les exportations après les variations de représentation par défaut, chacune avec args
alignement avec les accessoires composants.
Les décorateurs enveloppent des histoires avec un contexte supplémentaire. Ils sont définis dans le paramètre decorators
. Les sous-composants peuvent être incorporés, mais envisagez de rendre la complexité.
Publier votre livre de contes:
Une version de production (npm run build-storybook
) génère des fichiers statiques dans un dossier de construction. Les options d'hébergement incluent les pages GitHub, Netlify et AWS S3. Les actions GitHub peuvent automatiser le déploiement aux pages GitHub.
Intégration chromatique pour VRT:
Chromatique améliore le livre du scénario avec des tests de régression visuelle. Créez un compte chromatique, obtenez un jeton de projet et installez le package chromatique:
npx storybook@latest init
Ajouter un script chromatic
à package.json
:
npx create-react-app my-scalable-component-library
Définissez la variable d'environnement CHROMATIC_PROJECT_TOKEN
dans un fichier .env
. Running npm run chromatic
publie votre livre de contes sur chromatique. Pour l'intégration CI / CD (recommandée), utilisez des actions GitHub (voir la documentation chromatique).
Conclusion:
Le livre d'histoire et le chromatique améliorent considérablement la qualité du code, permettant un développement efficace de bibliothèque de composants, des tests et une collaboration. Ils garantissent des applications bien documentées, évolutives et maintenables.
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!