output
中的path
指定打包后的文件放在指定地址文件夹output
中还有一个publicPath
属性,该属性是指定index.html
文件打包引用的一个基本路径:js
文件时,路径是 bundle.js
;一般浏览器加载
,默认会在前面加一个/
,于是src="/bundle.js"
,如果是本地打开html,是访问不到的,只能是启服务才能用/
,路径是 /bundle.js
,那么浏览器会根据所在的域名+路径去请求对应的资源;html
文件来运行,会将其设置为./
,路径时 ./bundle.js
,可以根据相对路径去查找资源;devServer
中也有一个publicPath
的属性,该属性是指定本地服务所在的文件夹: /
,也就是我们直接访问端口即可访问其中的资源 http://localhost:8080;
/abc
,那么我们需要通过 http://localhost:8080/abc
才能访问到对应的打包后的资源;bundle.js
通过 http://localhost:8080/bundle.js
也是无法访问的:output.publicPath
也设置为 /abc
;devServer.publicPath
与 output.publicPath
相同;devServer
中contentBase
对于我们直接访问打包后的资源其实并没有太大的作用,它的主要作用是如果我们打包后的资源,又依赖于其他的一些资源,那么就需要指定从哪里来查找这个内容:index.html
中,有
contentBase
即可devServer
中还有一个可以监听contentBase
发生变化后重新编译的一个属性:watchContentBase
proxy是我们开发中非常常用的一个配置选项,它的目的设置代理来解决跨域访问的问题:
我们可以进行如下的设置: