-
-
Notifications
You must be signed in to change notification settings - Fork 9.6k
Closed
Description
Describe the bug
I use storybook for react on TypeScript and create stories using CSF format.
like this:
Component
type Props = {
title: string;
descriptions: string[];
};
export default function App(props: Props) {
...
Story
const meta: Meta = {
title: "App",
component: App
};
export default meta;
const Template: Story<React.ComponentProps<typeof App>> = (args) => (
<App {...args} />
);
export const NgPattern = Template.bind({});
// expect type error
NgPattern.args = {
title: "Title"
// descriptions: [],
};
I do not know why component arg type is not strict.
If I make a mistake in using it, please let me know.
To Reproduce
https://codesandbox.io/s/sharp-raman-2rbk6?file=/src/App.stories.tsx
Expected behavior
The props types error is showed like this:
Property 'descriptions' is missing in type '{ title: string; }' but required in type 'Props'.
System
Environment Info:
System:
OS: macOS 10.15.7
CPU: (8) x64 Intel(R) Core(TM) i7-8569U CPU @ 2.80GHz
Binaries:
Node: 14.15.4 - ~/.nodebrew/current/bin/node
Yarn: 1.22.10 - /usr/local/bin/yarn
npm: 6.14.11 - ~/.nodebrew/current/bin/npm
Browsers:
Chrome: 88.0.4324.96
Edge: 87.0.664.57
Firefox: 70.0.1
Safari: 14.0
npmPackages:
@storybook/react: 6.1.15 => 6.1.15
Additional context
If here type args?: Partial<Args>;
become args?: Args;
, It works as expected.
https://github.com/storybookjs/storybook/blob/next/lib/addons/src/types.ts#L171
IainMcHugh, mattste, Vincent-Alibert, VictorLandim, aki77 and 21 moreVictorLandimVincent-Alibert, VictorLandim and karthickthankyou