docs/_snippets/my-component-story-basic-and-props.md
import type { Meta, StoryObj } from '@storybook/angular';
import { MyComponent } from './my-component.component';
const meta: Meta<MyComponent> = {
component: MyComponent,
};
export default meta;
type Story = StoryObj<MyComponent>;
export const Basic: Story = {};
export const WithProp: Story = {
render: () => ({
props: {
prop: 'value',
},
}),
};
import preview from '../.storybook/preview';
import { MyComponent } from './my-component.component';
const meta = preview.meta({
component: MyComponent,
});
export const Basic = meta.story();
export const WithProp = meta.story({
render: () => ({
props: {
prop: 'value',
},
}),
});
import { MyComponent } from './MyComponent';
export default {
component: MyComponent,
};
export const Basic = {};
export const WithProp = {
render: () => <MyComponent prop="value" />,
};
// Replace your-framework with the framework you are using, e.g. react-vite, nextjs, nextjs-vite, etc.
import type { Meta, StoryObj } from '@storybook/your-framework';
import { MyComponent } from './MyComponent';
const meta = {
component: MyComponent,
} satisfies Meta<typeof MyComponent>;
export default meta;
type Story = StoryObj<typeof meta>;
export const Basic: Story = {};
export const WithProp: Story = {
render: () => <MyComponent prop="value" />,
};
import preview from '../.storybook/preview';
import { MyComponent } from './MyComponent';
const meta = preview.meta({
component: MyComponent,
});
export const Basic = meta.story();
export const WithProp = meta.story({
render: () => <MyComponent prop="value" />,
});
import preview from '../.storybook/preview';
import { MyComponent } from './MyComponent';
const meta = preview.meta({
component: MyComponent,
});
export const Basic = meta.story();
export const WithProp = meta.story({
render: () => <MyComponent prop="value" />,
});
import { MyComponent } from './MyComponent';
export default {
component: MyComponent,
};
export const Basic = {};
export const WithProp = {
render: () => <MyComponent prop="value" />,
};
import type { Meta, StoryObj } from 'storybook-solidjs-vite';
import { MyComponent } from './MyComponent';
const meta = {
component: MyComponent,
} satisfies Meta<typeof MyComponent>;
export default meta;
type Story = StoryObj<typeof meta>;
export const Basic: Story = {};
export const WithProp: Story = {
render: () => <MyComponent prop="value" />,
};
<script module>
import { defineMeta } from '@storybook/addon-svelte-csf';
import MyComponent from './MyComponent.svelte';
const { Story } = defineMeta({
component: MyComponent,
});
</script>
<Story name="Basic">
<MyComponent />
</Story>
<Story name="WithProp">
<MyComponent prop="value" />
</Story>
import MyComponent from './MyComponent.svelte';
export default {
component: MyComponent,
};
export const Basic = {};
/*
*๐ Render functions are a framework specific feature to allow you control on how the component renders.
* See https://storybook.js.org/docs/api/csf
* to learn how to use render functions.
*/
export const WithProp = {
render: () => ({
Component: MyComponent,
props: {
prop: 'value',
},
}),
};
<script module>
import { defineMeta } from '@storybook/addon-svelte-csf';
import MyComponent from './MyComponent.svelte';
const { Story } = defineMeta({
component: MyComponent,
});
</script>
<Story name="Basic">
<MyComponent />
</Story>
<Story name="WithProp">
<MyComponent prop="value" />
</Story>
// Replace your-framework with svelte-vite or sveltekit
import type { Meta, StoryObj } from '@storybook/your-framework';
import MyComponent from './MyComponent.svelte';
const meta = {
component: MyComponent,
} satisfies Meta<typeof MyComponent>;
export default meta;
type Story = StoryObj<typeof meta>;
export const Basic: Story = {};
/*
*๐ Render functions are a framework specific feature to allow you control on how the component renders.
* See https://storybook.js.org/docs/api/csf
* to learn how to use render functions.
*/
export const WithProp: Story = {
render: () => ({
Component: MyComponent,
props: {
prop: 'value',
},
}),
};
import MyComponent from './MyComponent.vue';
export default {
component: MyComponent,
};
export const Basic = {
render: () => ({
components: { MyComponent },
template: '<MyComponent />',
}),
};
export const WithProp = {
render: () => ({
components: { MyComponent },
template: '<MyComponent prop="value"/>',
}),
};
import type { Meta, StoryObj } from '@storybook/vue3-vite';
import MyComponent from './MyComponent.vue';
const meta = {
component: MyComponent,
} satisfies Meta<typeof MyComponent>;
export default meta;
type Story = StoryObj<typeof meta>;
export const Basic: Story = {
render: () => ({
components: { MyComponent },
template: '<MyComponent />',
}),
};
export const WithProp: Story = {
render: () => ({
components: { MyComponent },
template: '<MyComponent prop="value"/>',
}),
};
import preview from '../.storybook/preview';
import MyComponent from './MyComponent.vue';
const meta = preview.meta({
component: MyComponent,
});
export const Basic = meta.story({
render: () => ({
components: { MyComponent },
template: '<MyComponent />',
}),
});
export const WithProp = meta.story({
render: () => ({
components: { MyComponent },
template: '<MyComponent prop="value"/>',
}),
});
import preview from '../.storybook/preview';
import MyComponent from './MyComponent.vue';
const meta = preview.meta({
component: MyComponent,
});
export const Basic = meta.story({
render: () => ({
components: { MyComponent },
template: '<MyComponent />',
}),
});
export const WithProp = meta.story({
render: () => ({
components: { MyComponent },
template: '<MyComponent prop="value"/>',
}),
});
import { html } from 'lit';
export default {
title: 'Path/To/MyComponent',
component: 'my-component',
};
export const Basic = {};
export const WithProp = {
render: () => html`<my-component prop="value" />`,
};
import type { Meta, StoryObj } from '@storybook/web-components-vite';
import { html } from 'lit';
const meta: Meta = {
component: 'my-component',
};
export default meta;
type Story = StoryObj;
export const Basic: Story = {};
export const WithProp: Story = {
render: () => html`<my-component prop="value" />`,
};
import { html } from 'lit';
import preview from '../.storybook/preview';
const meta = preview.meta({
component: 'my-component',
});
export const Basic = meta.story();
export const WithProp = meta.story({
render: () => html`<my-component prop="value" />`,
});
import { html } from 'lit';
import preview from '../.storybook/preview';
const meta = preview.meta({
component: 'my-component',
});
export const Basic = meta.story();
export const WithProp = meta.story({
render: () => html`<my-component prop="value" />`,
});