filenameは、ビルドステップを実行した後に、バンドルされたすべてのコードが蓄積されるファイルの名前を指定します。
pathは、app.js(ファイル名)がディスクに保存される出力ディレクトリを指定します。出力ディレクトリがない場合、webpackがそのディレクトリを作成します。例えば:
module.exports = {
output: {
path: path.resolve("./examples/dist"),
filename: "app.js"
}
}
これは、ディレクトリが作成されますMyProjectと/例/ distのをし、そのディレクトリの下にそれが作成されますapp.js、/myproject/examples/dist/app.jsを。ビルド後、myproject / examples / dist / app.jsを参照して、バンドルされたコードを確認できます
publicPath:「ここに何を入れればよいですか?」
publicPathは、バンドルファイルapp.jsが提供されるWebサーバーの仮想ディレクトリを指定します。publicPathを使用する場合のサーバーという単語は、webpack-dev-server、または高速サーバー、またはwebpackで使用できるその他のサーバーのいずれかです。
例えば
module.exports = {
output: {
path: path.resolve("./examples/dist"),
filename: "app.js",
publicPath: path.resolve("/public/assets/js")
}
}
この構成は、すべてのjsファイルをexamples / dist / app.jsにバンドルし、そのファイルに書き込むようにwebpackに指示します。
publicPathは、webpack-dev-serverまたはExpressサーバーに、このバンドルされたファイル(examples / dist / app.js)をサーバー内の指定された仮想場所(/ public / assets / js)から提供するように指示します。したがって、htmlファイルでは、このファイルを次のように参照する必要があります。
<script src="public/assets/js/app.js"></script>
だから、要約すると、publicPathは間のマッピングのようなものですvirtual directory
、あなたのサーバー内とoutput directory
output.path設定で指定され、ファイルの要求するたびに、公開/資産/ JSは/ app.js来て、/examples/dist/app.jsファイルが提供されます
path
、いつ使用し、いつ使用しpublicPath
ますか?