Задать вопрос
azovl
@azovl

Как использовать useLocation хук в storybook?

Подскажите как интегрировать useLocation хук в storybook компонент?

К примеру имеется story:
export default {
    component: Header,
    title: 'Header'
};

export const Default = (args) => <Header {...args} />;


Компонент header использует useLocation:
const usePathname = () => {
        const location = useLocation();
        return location.pathname;
    };


При выполнении кода, возникает ошибка:

TypeError
Cannot read properties of undefined (reading 'location')


Подскажите как зафиксить данную ошибку? И вообще как правильно интегрировать библиотеки в storybook?
  • Вопрос задан
  • 364 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
Решения вопроса 1
Alexandroppolus
@Alexandroppolus
кодир
useLocation работает, если компонент с ним прямо или косвенно находится внутри Router.
Как известно, Router получает в пропсы экземпляр history, кладет его в контекст, а useLocation достает из контекста.
Возможно, в сторибуке ты забыл обернуть всё в Router
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 80 000 до 120 000 ₽
ITK academy Воронеж
от 50 000 до 90 000 ₽