javascript - webpack output.publicPath 如何动态配置地址
迷茫
迷茫 2017-04-11 13:18:22
0
1
861

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自动匹配开发测试生产这些环境,而不是去做多次修改,多次上传;

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

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全員に返信 (1)
Ty80

开发环境和生产环境的分开,用process.ene.NODE_ENV自动判断环境取publicPath

publicPath: process.env.NODE_ENV === 'production' ? config.build.assetsPublicPath : config.dev.assetsPublicPath
いいねを押す+0
    最新のダウンロード
    詳細>
    ウェブエフェクト
    公式サイト
    サイト素材
    フロントエンドテンプレート
    私たちについて 免責事項 Sitemap
    PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!