我正在尝试使用 Framer Motion 来使用 AnimatePresence 为路线设置动画,并且由于某种原因,我试图通过每条路线填充信息的上下文(通过表单收集个人信息作为注册步骤)在一条路线退出时不会持续存在并且通过 AnimatePresence 加载另一个。我不确定为什么会这样。每次加载新路线时,我是否应该将状态作为道具传递?
<AnimatePresence exitBeforeEnter>
<Switch location={location} key={location.key}>
<Route exact path="/" component={LandingPage} />
...
</Switch>
</AnimatePresence>
我已经为每条路线的每个组件添加了初始、动画和退出转换。一旦一个组件退出并加载其他组件,存储在上下文中的状态就会被重置。
这里也location
来自const location = useLocation()
于react-router-dom