A SPA boilerplate with React, built with love.javascript
React 15.4.2html
Redux 3.6.0vue
react-redux 5.0.2, 用来绑定 React 和 Redux.java
react-router 3.0.2, 当v4发布稳定版本时, 会进行相关的更新react
JSXwebpack
ES6git
webpack 2.2github
Express, 测试服务器web
Hot-Reload, 支持 React 和 Redux!vue-cli
Proxy
Environmental value
ESlint, 使用 standard
和 standard-react
进行代码风格检查
redux-devtools, 对 store
进行更加友好的调试
# 该模版依赖于 sao 模版系统,因此请先sao npm install -g sao # 下载模版 sao SidKwok/react-webpack-boilerplate new-project --install # 安装所有依赖 cd new-project npm install # 运行测试环境, 默认端口: 8080 npm run dev # 生产环境 npm run build # 检查文件代码风格 (若是有使用 eslint 的话) npm run lint
该模版大部分参考了 vue-cli/webpack 的设计。 若是你对 vue-cli
很熟悉的话, 你应该会对该模版很快上手。若是想看模版的结构,能够直接在full-features
分支查看。
你可使用 less
, sass
或者 stylus
做为你的CSS预处理器,不过你首先得安装相关的依赖。举个?,假如你要使用 less
:
npm install less less-loader --save-dev
而后,你就能够在你的组件里 import
你的 less
文件。
该模版使用 http-proxy-middleware 来代理接口.
举个?, 你想代理接口 /api/get-post
和 /api/get-id
到, 你能够在 config/index.js
中添加如下代码:
... dev: { proxyTable: { '/api': { target: 'http://example.org', changeOrigin: true } } } ...
你即可以在测试服务器中使用你所代理的接口。在这里查看更多的选项。
vue-cli/webpack
的文档详细地介绍了环境变量地用法。
该模版使用了react-hot-loader v3来对React的组件进行热更新,甚至支持Redux的热更新!但愿你玩的开心。
standard 和 standard-react 是该模版默认的代码风格,你也能够在 .eslintrc.js
中使用本身喜好的代码风格。
该模版已经默认开启了浏览器的redux-devtool
,可是若是要让其工做起来,你须要下载相关的浏览器插件。
你也能够选择 Customized DevTools
, 这个是创建在页面里面的一个组件,你能够在代码里自定义你须要的devtool。在这里查看更多的选项。
生产环境的文件(也就是dist里的文件)是适用于真实的server的,因此你不该该直接访问index.html
。若是要对dist内的文件进行测试,你可使用静态服务器:
npm install -g anywhere # 或者其余静态服务器 # 在 `./dist` 文件夹里 anywhere
[x] eslint
[ ] unit test
[ ] e2e test
[x] Redux comming soon!
[x] hot-reload for redux
[ ] better structure for redux
[x] support redux-devtools-extension
[ ] 使用happypack让构建更快
[x] DevTools的选择:使用浏览器的仍是自定义的