这是2.0的测试分支,主要是实现版本化开发,目前技术选型:
前端:构建工具webpack
,框架随意,但是需要按照约定发布到server中指定目录(public/[version版本号]/)
服务器:基于 koa
, 构建工具 gulp
,components目录已经包含部分开箱即用的组, config里面包含各种环境(目前是dev跟prod)的配置文件,可以按照自己的需求(沙箱,灰度)增加配置表,html层面有注入器,可以将配置在路由层面注入到页面中,缓存控制全部废弃,由上层服务器接手,减少不必要的性能开销
版本控制:默认开启,会根据public顶级目录中的文件名定义版本,config中的entry字段可以指定目前版本的入口,开启版本控制后如果不指定entry,那么选择版本号最新的目录(public/[最新版本号]/index.html)作为入口
注:里面webpack-dev-server我是fork了官方的过来改,因为官方用了memory-fs,这样子路由层面没办法拦截到请求,所以改成接受自定义fs的实现
最后,感谢团队老大带来的基于scrat的前端服务器,这个项目的灵感是从他那里来的,加上我自己的思考
ps:因为还是测试版,所以问题在所难免,欢迎pr跟开issue
更新记录:(不按照时间先后)
- 增加
client-debug
组件用于在服务端输出客户端调试信息(移动端调用console之后,服务端会打印出日志) - 服务端增加
webpack
构建,用于处理多静态页面的情况 routerMap
组件的路由匹配方式变更为为path-to-regexp
- 增加
webpack-uri-loader
,实现类似于fis的__inline
以及__uri
方法