2.2.4 publicPath配置
问题一:publicPath配置?
在复杂的项目里可能会有一些构建出的资源需要异步加载,加载这些异步资源需要对应的 URL 地址。
output.publicPath配置发布到线上资源的 URL 前缀,为string 类型。 默认值是空字符串'',即使用相对路径。
这样说可能有点抽象,举个例子,需要把构建出的资源文件上传到 CDN 服务上,以利于加快页面的打开速度。配置代码如下:
filename:'[name]_[chunkhash:8].js'publicPath:'https://cdn.example.com/assets/'
这时发布到线上的 HTML 在引入 JavaScript 文件时就需要:
<script src='https://cdn.example.com/assets/a_12345678.js'></script>
使用该配置项时要小心,稍有不慎将导致资源加载404错误。
output.path和output.publicPath都支持字符串模版,内置变量只有一个:hash代表一次编译操作的 Hash 值。
2.2.5 crossOriginLoading配置
问题一:crossOriginLoading配置?
Webpack 输出的部分代码块可能需要异步加载,而异步加载是通过JSONP方式实现的。 JSONP 的原理是动态地向 HTML 中插入一个标签去加载异步资源。output.crossOriginLoading则是用于配置这个异步插入的标签的crossorigin值。
script 标签的 crossorigin 属性可以取以下值:
anonymous(默认) 在加载此脚本资源时不会带上用户的 Cookies;
use-credentials在加载此脚本资源时会带上用户的 Cookies。
通常用设置 crossorigin 来获取异步加载的脚本执行时的详细错误信息。
网友评论