一般写法:
output: {
path: __dirname + "/js/",
filename: [name].bundle.js
}
// 打包后的文件输出到当前目录的js文件夹下
// path指定的是编译存放目录
// 没有写publicPath,页面引用方式
<body>
<script src="b.bundle.js"></script>
</body>
二般写法:
// 指定publicPath
output: {
path: __dirname + "/js/",
publicPath: '/asserts/',
filename: [name].bundle.js
}
// 页面引用需要改为
<body>
<script src="asserts/b.bundle.js"></script>
</body>
// 有生产环境和开发环境的区别
// 开发环境
publicPath:虚拟目录,自动指向path编译目录(/assets/ => /build/js/)。html中引用js文件时,
必须引用此虚拟路径(但实际上引用的是内存中的文件,既不是/build/js/也不是/assets/)
// 生产环境
把编译目录(/build/js/)下的文件,全部复制到/assets/目录下
(注意:不是去修改index.html中引用bundle.js的路径)
我司都是服务器端渲染,页面引用文件都是绝对路径,所以没写publicPath也没影响,正常引用打包后的文件