服务端衬着的React手脚架。圆满运用 React, Redux, and React-Router!最好用的脚手架

Universal React Starter Kit

效劳端衬着的React手脚架

这个启动包的设想是为了让你运用一整套最新最酷的前端手艺,一切都是可设置,富特征,基于webpack已供应代码热加载,运用sass预处置惩罚css,单元测试,代码覆蓋率报告,代码支解等等更多。

这个项目最主要的目标是尽量坚决的保存。目标不是要你肯定根据这个构造去完成你的项目,谐在使前端开辟更硬朗,更简朴另有最主要的是更快活。你能够获得以下的一切特征!

末了,假如没有人人的孝敬,这个项目是不可能云云硬朗的,所以,谢谢人人。

以为不错的话,请Star一下本项目,这是对作者最大的支撑。

一切相干库已准备好,随时守候挪用。

特征

需求设置

  • node ^4.5.0

  • npm ^3.0.0

最先

确认好你的环境设置,然后就能够最先以下步骤。

$ git clone https://github.com/bodyno/react-starter-kit.git
$ cd react-starter-kit
$ npm install                   # Install project dependencies
$ npm start                     # Compile and launch

假如一切顺利,你会看到以下:

<img src=”http://i.imgur.com/zR7VRG6.pn… />

开辟过程当中,你用得最多的会是npm start,然则这里另有许多别的的处置惩罚:

npm run <script>诠释
start效劳启动在3000端口,代码热替代开启。
compile编译顺序到dist目次下(默许目次~/dist)。
devnpm start雷同, 然则启动nodemon保卫历程。
dev:no-debugnpm run dev 然则禁用devtool(开辟工具)。
test开启Karma测试并天生覆蓋率报告。
test:dev开启Karma测试并监听转变随时从新测试,然则天生覆蓋率报告。
deploy启动代码搜检,测试,假如胜利,编译到dist目次下。
deploy:devdeploy雷同,然则NODE_ENV值为”development”。
deploy:proddeploy雷同,然则NODE_ENV值为”production”。
lint搜检一切.js文件是不是范例。
lint:fix搜检一切.js文件是不是范例并修复它们。 更多

顺序目次

这个项目标构造运用的是 fractal(不规则碎片形:合适大型项目)*,要领的分组主如果遵照特征而不是文件范例。注重,这个目次构造只是一个指引,并不肯定要按这个来。这类构造谐在让顺序更轻易扩大,想相识更多请点击这里

.
├── bin                      # 启动剧本
├── blueprints               # redux-cli的蓝图
├── build                    # 一切打包设置项
│   └── webpack              # webpack的指定环境设置文件
├── config                   # 项目设置文件
├── server                   # Koa 顺序 (运用 webpack 中间件)
│   └── main.js              # 效劳端顺序进口文件
├── src                      # 顺序源文件
│   ├── main.js              # 顺序启动和衬着
│   ├── components           # 全局可复用的表现组件(Presentational Components)
│   ├── containers           # 全局可复用的容器组件
│   ├── layouts              # 主页构造
│   ├── static               # 静态文件(不要随处imported源文件)
│   ├── styles               # 顺序款式
│   ├── store                # Redux指定块
│   │   ├── createStore.js   # 创建和运用redux store
│   │   └── reducers.js      # Reducer注册和注入
│   └── routes               # 主路由和异步支解点
│       ├── index.js         # 用store启动主顺序路由
│       ├── Root.js          # 为上下文providers包住组件
│       └── Home             # 不规则路由
│           ├── index.js     # 路由定义和代码异步支解
│           ├── assets       # 组件引入的静态资本
│           ├── components   # 直观React组件
│           ├── container    # 衔接actions和store
│           ├── modules      # reducers/constants/actions的鸠合
│           └── routes **    # 不规则子路由(** 可选择的)
└── tests                    # 单元测试

款式

一切的css和sass都支撑会被预处置惩罚。只要被引入,都邑经由PostCSS紧缩,加前缀。在临盆环境下会提取到一个css文件下。

效劳端

这个项目标效劳端运用Koa。须要注重的是,只要一个目标那就是供应了webpack-dev-middlewarewebpack-hot-middleware(代码热替代)。运用自定义的Koa顺序替代webpack-dev-server,让它更轻易完成universal 衬着和为了不使这个包过于巨大。

打包优化

Babel被设置babel-plugin-transform-runtime能够让代码更优化。别的,在临盆环境,我们运用react-optimize来优化React代码。

在临盆环境下,webpack会导出一个css文件并紧缩Javascript,并把js模块优化到最好的机能。

静态布置

假如你正在运用nginx处置惩罚顺序,确保一切的路由都直接指向 ~/dist/index.html 文件,然后让react-router处置惩罚剩下的事。假如你不是很肯定应当怎么做,文档在这里。Express在脚手架中用于扩大效劳和代办API,或许别的你想要做的事,这完整取决于你。

谢谢人人

假如没有人人的孝敬,这个项目是不可能降生的, 谢谢一切为这个项目做出孝敬的人。

链接在这里

    原文作者:nobody
    原文地址: https://segmentfault.com/a/1190000007229598
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞