Движение фреймера - состояние не сохраняется через маршруты - PullRequest
0 голосов
/ 10 июля 2020

Я пытаюсь использовать Framer Motion для анимации маршрутов с помощью AnimatePresence, и по какой-то причине контекст, в котором я пытаюсь заполнить информацию (сбор личной информации через формы в качестве шагов регистрации), через каждый маршрут не сохраняется, когда один rout завершает работу и загружает другой через AnimatePresence. Я не уверен, почему это происходит. Следует ли передавать состояние в качестве реквизита каждый раз, когда я загружаю новый маршрут?

 <AnimatePresence exitBeforeEnter>
   <Switch location={location} key={location.key}>
      <Route exact path="/" component={LandingPage} />
      ...
    </Switch>
 </AnimatePresence>

И я добавил начальный, анимированный и выходной переходы для каждого компонента в каждом маршруте. Как только один компонент выходит и другие загружаются, состояние, хранящееся в контексте, сбрасывается.

Также location здесь происходит от const location = useLocation() из react-router-dom

1 Ответ

0 голосов
/ 11 июля 2020

Думаю, я разобрался. Размещение поставщика контекста в AnimatePresence перезагрузит ваш фрейм внутри, вызывая обновленное состояние.

...