基于react,ant-design,dva,Mock 企业级后台管理系统最佳实践
演示地址 http://zuiidea.github.io/antd-admin/
- 基于react,ant-design,dva,Mock 企业级后台管理系统最佳实践
- 基于Mock实现脱离后端独立开发
- 基于Antd UI 设计语言,提供后台管理系统常见使用场景
- 基于dva动态加载 Model 和路由,按需加载
- 浅度响应式设计
2017-04-28
2017-04-21
- 重写Menu,Bread组件及配置文件,说明
2017-04-14
- 升级开发工具为roadhog
- 使用
roadhog
的mock功能 - 增强
utils/request.js
跨域处理能力
├── /dist/ # 项目输出目录
├── /src/ # 项目源码目录
│ ├── /components/ # UI组件及UI相关方法
│ │ ├── skin.less # 全局样式
│ │ └── vars.less # 全局样式变量
│ ├── /routes/ # 路由组件
│ │ └── app.js # 路由入口
│ ├── /models/ # 数据模型
│ ├── /services/ # 数据接口
│ ├── /themes/ # 项目样式
│ ├── /mock/ # 数据mock
│ ├── /utils/ # 工具函数
│ │ ├── config.js # 项目常规配置
│ │ ├── menu.js # 菜单及面包屑配置
│ │ ├── config.js # 项目常规配置
│ │ ├── request.js # 异步请求函数
│ │ └── theme.js # 项目需要在js中使用到样式变量
│ ├── route.js # 路由配置
│ ├── index.js # 入口文件
│ └── index.html
├── package.json # 项目信息
├── .eslintrc # Eslint配置
└── .roadhogrc.js # roadhog配置
文件夹命名说明:
- components:组件(方法)为单位以文件夹保存,文件夹名组件首字母大写(如
DataTable
),方法首字母小写(如layer
),文件夹内主文件与文件夹同名,多文件以index.js
导出对象(如./src/components/Layout
) - routes:页面为单位以文件夹保存,文件夹名首字母小写(特殊除外,如
UIElement
),文件夹内主文件以index.js
导出,多文件时可建立components
文件夹(如./src/routes/dashboard
),如果有子路由,依次按照路由层次建立文件夹(如./src/routes/UIElement
)
克隆项目文件:
git clone https://github.com/zuiidea/antd-admin.git
进入目录安装依赖:
npm i 或者 yarn install
npm i roadhog@0.6.0-beta.6 -g
不使用roadhog时则安装下面的依赖
// npm i webpack@2.5.1 connect-history-api-fallback@1.3.0 webpack-dev-middleware@1.10.2 webpack-hot-middleware@2.18.0 nyan-progress-webpack-plugin@1.2.0 eslint-friendly-formatter@2.0.7 html-webpack-plugin@2.28.0 extract-text-webpack-plugin@2.1.0 browser-sync@2.11.1 browser-sync-webpack-plugin@1.1.4 copy-webpack-plugin@4.0.1 clean-webpack-plugin@0.1.16
npm i webpack@1.12.2 connect-history-api-fallback@1.1.0 webpack-dev-middleware@1.4.0 webpack-hot-middleware@2.6.0 nyan-progress-webpack-plugin@1.1.4 eslint-friendly-formatter@1.2.2 html-webpack-plugin@1.7.0 extract-text-webpack-plugin@0.9.1 browser-sync@2.11.1 browser-sync-webpack-plugin@1.0.1 copy-webpack-plugin@4.0.1 clean-webpack-plugin@0.1.13
npm i style-loader@0.13.1 css-loader@0.23.0 less@2.6.0 less-loader@2.2.2
开发:
npm run dev
打开 http://localhost:8000
构建:
npm run build
将会生成dist目录
代码检测:
npm run lint
用户列表:https://github.com/dvajs/dva/tree/master/examples/user-dashboard
dashboard设计稿:https://dribbble.com/shots/3108122-Dashboard-Admin (已征得作者同意)
web
移动