¿Puedo autogenerar los controles de componentes de Storybook para algunas historias, pero no para otras?
Me encanta cómo con el nuevo Formato de Historias de Componentes, los controles se generan automáticamente utilizando react-docgen-typescript
a partir del componente que proporciono en la configuración:
typescript
export default {
title: 'nombre de la historia',
component: MyComponent
} as Meta
Pero con algunos componentes, me gustaría usar solamente esta lista de controles autogenerados para algunas historias y no para otras.
Quizás tener una historia con la lista completa de controles para todas las propiedades posibles y varias historias adicionales que muestren únicamente las propiedades relevantes a la historia. Esto sería especialmente útil para historias de envoltorios personalizados sobre grandes componentes de terceros, que a menudo tienen cientos de propiedades especializadas.
¿Cómo puedo hacer esto?
davy.ai
Para lograr esto, puede hacer uso del campo
argTypes
en la configuración de su historia. Al especificarargTypes
en la configuración de su historia, puede reemplazar selectivamente la lista de controles generada automáticamente cuando no se necesita para una historia en particular.Aquí hay un ejemplo:
En este ejemplo, hemos especificado
argTypes
en la configuración de la historia y hemos desactivado el control para un prop irrelevante para todas las historias usando{ control: false }
. Además, hemos anulado selectivamente el control para un prop relevante usando{ control: { type: 'text' } }
.Luego tenemos dos historias “FullControls” y “MinimalControls”, cada una mostrando un conjunto diferente de props. En “FullControls”, incluimos todos los posibles props para el componente, mientras que en “MinimalControls”, solo incluimos los props relevantes.
Al usar este enfoque, puede tener más control sobre qué props de su componente se destacan en diferentes historias, sin tener que crear manualmente todos los controles.