как вызвать функцию на любом маршруте внутри реагирующего роутера? - PullRequest
0 голосов
/ 17 декабря 2018

Я создаю приложение «Реакция / Редукция / Тук».У меня есть некоторые маршруты, работающие и компоненты рендеринга.В настоящее время у меня есть Routes файл со всеми моими маршрутами, которые я отображаю в моем ReactDOM.

- это приложение магазина, которое я хочу синхронизировать с моим сервером, чтобы при загрузке приложения оно загружало приложениес правильными вещами из базы данных.поэтому, если у кого-то есть продукты в корзине, я хочу, чтобы они были в корзине, когда приложение загружается

Я изо всех сил пытаюсь придумать, как это сделать.Я думал о том, чтобы вызвать его в componentDidMount, но он вызывается только для конкретного компонента, поэтому, если бы пользователь должен был выбрать другой маршрут, он не был бы вызван, и корзина не была бы синхронизирована.так есть ли способ вызывать функцию при каждом изменении маршрута?или другое решение моей проблемы?

1 Ответ

0 голосов
/ 17 декабря 2018

Если информация о корзине используется для каждой страницы / маршрута, у вас, вероятно, должен быть компонент, который загружается / включается на каждом маршруте - например, заголовок, - в котором вы можете выполнить вызов для извлечения данных корзины (еслиеще не загружен).

<Switch>
  <Route path='...' component={Comp1} /> // <-- wont load cart info
  <Fragment>
    <ComponentThatFetchesCartInfo/> // <-- this will get included in every route inside Fragment
    <Route path='...' component={comp2}/>
    <Route path='...' component={comp3}/>
  </Fragment>
</Switch>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...