react admin system solution
react + redux + antd + webpack + axios + es6等
完整版文档请点击查看GitHub完整源码地址 或跳转源博客查看
此文档主要增加更新日志
依赖包版本升级
react@15.6.1
antd@2.11.2
webpack@2.6.1
等等
引入redux系列
redux@3.7.2
redux-thunk@2.2.0
react-redux@5.0.5
增加权限管理模块
使用easy-mock模拟数据模拟登录接口
使用redux系列将登录用户数据传递给权限组件
权限组件采用Render Callback的方式传递权限给需要受控制的组件(具体做法请查看源代码。)
用户状态保存在localStorage中
具体做法请运行项目查看
PS:以上管理权限只是一种方式,但这绝对不是唯一的方式,也不是最好的方式。如果你有更好的方式,不妨加上面的群和大家一起分享下。😄😄
增加路径别名
使用@别名处理引入组件相对路径过长问题。
缺点:编辑器不能使用快捷提示和快捷跳转到相应的文件
权限管理模块增加页面跳转权限验证
点击权限管理的路由拦截,若没有访问权限则会跳转到404页面。
大致实现方式(非常简单):通过向自定义router组件传入store,登录之后可获取到redux中的权限state数据,并通过判断是否包含权限进行跳转。ps: 该demo的效果是管理员登录之后才能跳转到路由拦截页面。具体操作请拉取代码尝试。
增加响应式布局
替换antd Col 组件的响应式栅格为md(具体参数用法请查看antd官方文档)
初始化页面是获取当前浏览器宽度设置菜单显示类型
监听window的onresize函数,设置菜单显示类型。PS:浏览器宽度存入redux中,方便组件之间传递。