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的選擇:使用瀏覽器的仍是自定義的