next.js+rematch.js+koa2 🎉🎉🎉
-
自动切换服务端渲染&客户端渲染 -- next.js首屏服务端渲染,在客户端的页面跳转都是客户端渲染
-
next.js框架实现了热更新
-
服务端代码和客户端代码分离,发出请求用的同一套代码
-
rematch数据流管理
-
配置相关的也会存到全局model里,开放全局配置加载接口&局部配置加载接口
-
资源缓存,生产资源加载配置到cdn,脚本可实现自动上次资源到aliyun --打包生成的js资源 --static资源
-
css写法:用less
-
apidoc生成文档
-
log4js日志
├── build # next.js打包输出文件client,server
├── bundles # npm run analyze生成的分析文件
├── config # 项目配置文件
├── log # koa日志
├── tracelog # koa错误日志
├── client
│ ├── components # 组件
│ ├── models # model
│ ├── pages # 页面级container
│ ├── static # 本地静态资源
│ ├── store # rematch sotre middleware
│ ├── utils # 工具库
│ ├── next.congfig.js # next.js的配置文件
│ ├── next-env.d.ts # next.js 类型引用
│ ├── global.less # 全局样式
│ ├── tsconfig.json # typescript配置文件
├── doc
│ ├── api # api接口生成生成器
│ ├── page # 页面等级文档生成器
├── server
│ ├── controllers # koa controller
│ ├── middleware # koa中间件
│ ├── routers # koa2路由
│ ├── utils # koa2工具集合
│ ├── app.js # koa2入口文件
├── .babelrc # baber相关配置说明
├── .editorconfig # 编辑器配置文件
├── package.json # 项目信息
├── .stylelintrc # styleint配置文件
├── .babelrc.js # babel配置文件
├── .eslintignore # eslint忽略配置文件
├── .eslintrc # eslint配置文件
├── .prettierrc # prettie配置文件
├── .postcss.config # postcss配置
├── README.md # 项目说明
安装依赖。
$ npm install
如果网络状况不佳,可以使用 cnpm 进行加速。
开发
$ npm run dev
生产模式
$ npm run start
构建
$ npm run build
分析
$ npm run analyze
代码格式检查
$ npm run lint
格式自动美化
$ npm run prettier
- :loading: 自动生成 loading: 自动为 effects 生成 loading,不用手写 loading
- :updated: 节流: 针对 effects 进行防抖,对于高频率请求进行节流
- :immer: immer:reducer 中不可变数据
- :selectors: 选择器:
现代浏览器及 IE11。
IE / Edge |
Firefox |
Chrome |
Safari |
Opera |
---|---|---|---|---|
IE11, Edge | last 2 versions | last 2 versions | last 2 versions | last 2 versions |