builder-webpack
Webpack 构建器, 适用于NOW直播业务和活动类型的项目构建
特性
- 对H5开发友好,默认集成 Rem 方案,解决适配问题
- 支持 SCSS 和 JS 模块 import 时的绝对路径写法
- 支持多页面打包的开发方式
- 支持 FIS3 的 html 文件 inline 语法糖
- 支持雪碧图(图片后缀加__sprite)
- 使用Happypack 多实例构建,飞一般的构建速度
安装
确保feflow的版本在 v0.12.0 以上, 可以通过如下命令安装最新feflow版本
$ npm install feflow-cli -g
快速使用
添加feflow.json配置文件
在项目根目录添加 feflow.json
配置文件
命令
$ feflow dev # 本地开发时的命令 $ feflow build # 发布时的打包命令, 打出的包在工程的public目录, 包含 cdn, webserver 和 offline 三个文件夹
文档
内联
同时支持Fis3项目的inline语法糖写法和ejs的写法
- 内联 html:
<!--inline[/assets/inline/meta.html]-->
- 内联 javascript
<script src="@tencent/report-whitelist?__inline"></script>
备注:如果希望内联某个 JS 文件,需要使用相对路径的写法。
代理设置
- 执行
feflow dev
命令后会在本地的 8001 端口开启一个 WDS 服务,所有的静态资源(html, css, js, img) 都会在内存里面。可以通过 http://127.0.0.1:8001/webpack-dev-server 查看
- Fiddler配置把之前的本地绝对路径改成 本地server 路径即可:
热更新支持
- 如果要支持热更新,需要再增加一条代理
_webpack_hmr
的配置,如:
/^https?://now\.qq\.com/(__webpack_hmr)$/ http://127.0.0.1:8001/$1
- 在项目中,用
react-hot-loader
将pageComponent
变为可接受热更新的组件
...modulepageComponent