如果你还不是很了解什么是同构,请先自行Google。
现在市面上有很多优秀同构模板,但是其中有不少不能完美解决所有难题,只有其中一部分可以,但是这一部分模板却又集成了很多难懂的“黑科技”,熟悉周期较长,且难以扩展和维护。
该模板解决了如下常见难题:
- 开发环境的代码热更新问题 - Browser端的热替换(不刷新页面)、Server端的热更新(无需重启node服务器)
- 开发环境和生产环境尽量保持环境一致 - 易于避免奇怪的bug
- 开发和生产环境的代码分割 - 按需加载、按路由加载脚本(javascript)和样式(css)
- 尽量使用最新的官方组件 - 如react router v4,现在市面上很多样板还都只能用v3实现
- 完美结合koa和redux-thunk的async / await编程,实现真正的同构
- checksum问题
配置简单到让你发指:
好吧,既然解决这么多问题,是不是配置过程很恶心?答:不是的。整个项目的核心配置就在以下的2 * 2文件中:
--- 开始 ---
config/webpack.dev.config.js、src/development.js - 开发环境配置
config/webpack.prod.config.js、src/production.js - 生产环境配置
--- 结束 ---
就这样简单... 这样,大大方便使用者快速理解和自定义扩展。
如果你不相信:详细信息、项目代码请直戳Github仓库地址 - Koa-React-Universal
代码目前仍处于迭代阶段(有些额外功能还需补充上),但是开发环境和生产环境已经配置完毕。截图后面完成后再补上。
如果觉得好用,请送上star,请尽情fork。