Core: Pass args first to stories by default

This commit is contained in:
Michael Shilman 2020-04-17 01:53:27 +08:00
parent 1f27b252a6
commit c3e848b542
5 changed files with 6 additions and 5 deletions

View File

@ -7,5 +7,4 @@ export default {
includeStories: [], // or don't load this file at all
};
// eslint-disable-next-line react/prop-types
export const basic = ({ parameters }) => <Button>Basic</Button>;
export const basic = () => <Button>Basic</Button>;

View File

@ -27,6 +27,7 @@ const ArgUpdater = ({ args, updateArgs }) => {
export default {
title: 'Core/Global Args',
parameters: { passArgsFirst: false },
decorators: [
(story) => {
const [globalArgs, updateGlobalArgs] = useGlobalArgs();

View File

@ -21,7 +21,7 @@ export default {
},
};
export const PassedToStory = ({ parameters: { fileName, ...parameters } }) =>
export const PassedToStory = (_args, { parameters: { fileName, ...parameters } }) =>
mount('parameters', { ...parameters, storyParameter });
PassedToStory.story = {

View File

@ -13,7 +13,7 @@ export default {
},
};
export const PassedToStory = ({ parameters: { fileName, ...parameters } }) => ({
export const PassedToStory = (_args, { parameters: { fileName, ...parameters } }) => ({
template: `<div>Parameters are <pre>${JSON.stringify(parameters, null, 2)}</pre></div>`,
});

View File

@ -298,7 +298,8 @@ export default class StoryStore {
);
let finalStoryFn: LegacyStoryFn;
if (parameters.passArgsFirst) {
const { passArgsFirst } = parameters;
if (passArgsFirst || typeof passArgsFirst === 'undefined') {
finalStoryFn = (context: StoryContext) => (original as ArgsStoryFn)(context.args, context);
} else {
finalStoryFn = original as LegacyStoryFn;