React教程(十一) : 模拟一个销售网站

步骤一:使用React + Styled Component + Type Script实现响应式布局,效果如下
PC模式

Mobile模式

以上效果没有使用三方控件,都是原生css实现。代码示例:https://github.com/992990831/modernization/tree/main/responsive-layout

步骤二:添加路由子组件
步骤一的菜单并没有实现路由,先:npm install react-router-dom @types/react-router-dom --save
再为每个菜单项添加子组件,修改nav中的路由。

步骤三:transition - 组件切换时的过渡效果
React-router只是路由功能,没有提供组件切换时的过渡效果,不太美观。
npm install react-transition-group @types/react-transition-group --save
实现后的效果如下图:

要注意子组件样式中的这段:

如果没有position:absolute的话,会导致动画过程中两个组件上下排列,而不是并行排列。

完整的代码示例:https://github.com/992990831/modernization/tree/main/full-demo

参考:
https://reactjs.org/docs/animation.html
http://reactcommunity.org/react-transition-group/with-react-router/
https://www.jianshu.com/p/98fb143ac719

posted @ 2020-11-08 16:11  老胡Andy  阅读(85)  评论(0编辑  收藏  举报