reactjs - 反应“类似路由器”的动画
问题描述
我有一个侧边栏滑动菜单,它应该像一个带有转换的路由器,但基于我的应用程序的状态(redux)而不是路由。
第一次打开菜单时,过渡效果很好。但是,当我在菜单的两个内部组件之间切换时,没有动画。
这是组件的代码:
const SidebarInnerPages = () => {
const { selectedPage } = useSelector((state) => state.sidebarInnerPages)
let inner = null
if (selectedPage === "profile") {
inner = <ProfilePage />
} else if (selectedPage === "settings") {
inner = <SettingsPage />
} else if (selectedPage === "notifications") {
inner = <NotificationsPage />
}
return (
<CSSTransition
in={!!selectedPage}
unmountOnExit
timeout={600}
classNames={{ ...styles }}
>
<div className={styles.innerPagesContainer}>{inner}</div>
</CSSTransition>
)
}
所以第一次selectedPage
更改时,菜单滑入就好了。SettingsPage
但是如果我在and之间切换NotificationsPage
,后者只会弹出而不是动画。
我试过用没有运气的CSSTransition
包装TransitionGroup
。
任何想法如何去做?
提前致谢 :)
解决方案
推荐阅读
- python - Discord.py 重新上传图片
- reactjs - 如何在 React 中从 Firebase 实时数据库获取 ID 而不是生成的密钥?
- python-3.x - 连接两个数组作为坐标对
- android - Firebase ML 图像分类概率得到一个奇怪的输出(不在概率中)----更新 1
- java - Liquibase 库因 Micronaut 2.0 中的 Nullpointer 而失败
- vba - VBA:将带有输入变量的超链接添加到选定的单元格
- android - 如何使用 ADB 打开 MX Player?
- c# - C# .NET Core - 类的引用实例属性?
- python - 重定向意外 /bin/sh: 1:
- django - Django Gunicorn 不同类型的超时