共被编辑 1 次

版本 更新时间 贡献者 编辑原因 操作
#r1 2017-04-07 骑驴的舒克79 创建问题 查看

webpack output.publicPath 如何动态配置地址

webpack 中 output.publicPath 如何动态配置地址

例:

有一个通过 require.ensure 加载的 chunk.js

当其在开发环境时 output.publicPath 不需要配置也能成功调用,这是因为环境地址资源目录在同一地址下,而output.publicPath默认指向环境地址,所以暂且不说;

而当其需要把 chunk.js 上传到测试地址时,这就发生了变化。

由于测试地址(www.test.com)资源目录(static.test.com)不在同一个路径下,chunk.js 也就抛 404 了,这就需要在上传时修改 config.js,才能保证资源文件的成功访问。

output.publicPath = 'static.test.com'

这本没有什么,只是当需要将 chunk.js 部署到生产环境时,其环境地址(www.prod.com)资源目录(static.prod.com)又发生了改变,如果保证chunk.js能正常访问,又需要修改config.js:

output.publicPath = 'static.prod.com'

而在实际开发时也非常操蛋,在需要部署测试时需要做对应修改,在需要部署生产时又需要做对应修改;

有没有什么方法能够动态设置或者让 output.publicPath 自动匹配 开发测试生产这些环境,而不是去做多次修改,多次上传;

是我打开方式不对?还是有什么副本没打?求大神赐教...