filename指定了所有打包完毕的代码都会被累加到这个文件中。name of file。
path指定了输出目录,在该目录下将保存app.js
(即filename
)文件到磁盘中。如果不存在output directory
,webpack会为您创建该目录。
例如:
module.exports = {
output: {
path: path.resolve("./examples/dist"),
filename: "app.js"
}
}
这将创建一个名为 myproject/examples/dist 的目录,并在该目录下创建 app.js 和 /myproject/examples/dist/app.js。构建完成后,您可以浏览到 myproject/examples/dist/app.js 查看打包后的代码。
publicPath: “我应该在这里放什么?”
publicPath 指定了Web服务器上从哪个虚拟目录中服务打包后的文件,即 app.js。请注意,使用 publicPath 时的“服务器”可以是 webpack-dev-server 或 express 服务器或您可以与 Webpack 一起使用的其它服务器。
例如:
module.exports = {
output: {
path: path.resolve("./examples/dist"),
filename: "app.js",
publicPath: path.resolve("/public/assets/js")
}
}
这个配置告诉Webpack将所有的js文件打包到examples/dist/app.js中,并将其写入该文件。
publicPath告诉Webpack-dev-server或Express服务器在server中指定的虚拟位置/ public / assets / js中提供此捆绑文件,也就是说,您必须在html文件中引用该文件:
<script src="public/assets/js/app.js"></script>
总之,publicPath 就像是你的服务器上虚拟目录与 output.path 配置所指定的输出目录之间的映射。每当请求文件 public/assets/js/app.js 时,将会提供 /examples/dist/app.js 文件。
path
,什么时候应该使用publicPath
? - wmock