Укажите страницу по умолчанию для сборника рассказов - PullRequest
0 голосов
/ 11 декабря 2018

У меня есть сборник рассказов в моем приложении React, и по какой-то причине, когда я запускаю yarn storybook, он всегда открывает одну и ту же историю (автоматически выбираются selectedKind и selectedStory).Как я могу вручную выбрать историю по умолчанию?

1 Ответ

0 голосов
/ 19 января 2019

Вид и История выбираются на основе параметров запроса URL (т. Е. http://localhost:9001/?selectedKind=Component&selectedStory=default выберет тип Component и историю default).Если у вас нет параметров URL-адреса, сборник рассказов выберет в списке историю first (которая является первой историей, загруженной с помощью настроенной книги рассказов).

Если вы простоВы хотите выбрать первую историю в списке, а затем загрузить файлы историй в определенном порядке в вашей функции loadStories в файле .storybook/config.js.


Если, однако, вы хотите всегда принудительно выбирайте одну и ту же историю, затем следуйте приведенным ниже инструкциям.

Лучший способ сделать это - использовать addonAPI Storybook.Вот пример, который сработал для меня (с защитой, чтобы вы не застряли в одной и той же истории навсегда):

// .storybook/addons.js
import addonAPI from '@storybook/addons';

let firstLoad = true;
addonAPI.register('my-organisation/my-addon', (storybookAPI) => {
  storybookAPI.onStory((kind, story) => {
    // when you enter a story, if you are just loading storybook up, default to a specific kind/story. 
    if (firstLoad) {
      firstLoad = false; // make sure to set this flag to false, otherwise you will never be able to look at another story.
      storybookAPI.selectStory('FirstKind', 'default story');
    }
  });
});

С этим фрагментом, независимо от того, какую историю вы закончите, основываясь наURL, вы можете выбрать первый сюжет, на который вы попадете.

Подробнее о addonAPI сборника рассказов можно прочитать здесь: https://storybook.js.org/addons/api/ Я бы, вероятно, разрешил дополнительный параметр запроса в URL, чтобы вызвать вид +история с URL, который будет выбран.

Примечание. Возможно, существует существующий аддон, который предоставляет эту функцию, но быстрый поиск не дал результатов.

...