ім'я файлу вказує ім'я файлу, в який збирається весь ваш пакетний код після проходження кроку збирання.
path вказує вихідний каталог, куди app.js (ім'я файлу) збирається зберегти на диску. Якщо немає вихідного каталогу, webpack створить цей каталог для вас. наприклад:
module.exports = {
output: {
path: path.resolve("./examples/dist"),
filename: "app.js"
}
}
Це створить каталог myproject / example / dist і під цим каталогом створюється app.js , /myproject/examples/dist/app.js . Після побудови ви можете перейти до myproject / example / dist / app.js, щоб побачити пакет, що входить у комплект
publicPath: "Що мені тут помістити?"
publicPath вказує віртуальний каталог на веб-сервері, звідки надходить пакетний файл, з якого збирається застосувати app.js. Майте на увазі, що сервер слів при використанні publicPath може бути або webpack-dev-сервером, або експрес-сервером, або іншим сервером, який ви можете використовувати з webpack.
наприклад
module.exports = {
output: {
path: path.resolve("./examples/dist"),
filename: "app.js",
publicPath: path.resolve("/public/assets/js")
}
}
ця конфігурація повідомляє webpack об'єднати всі ваші js-файли в приклад / dist / app.js і записати в цей файл.
publicPath говорить WebPack-DEV-сервер або експрес - сервер для обслуговування цього файлу в комплекті тобто прикладів / відстань / app.js від зазначеного віртуального місця в сервері тобто / Public / активи / Js. Отже, у вашому HTML-файлі ви повинні посилатися на цей файл як
<script src="public/assets/js/app.js"></script>
Отже, підсумовуючи, publicPath - це як відображення між virtual directory
вашим сервером та output directory
визначеним конфігурацією output.path. Кожен раз, коли надходить запит на файл public / tools / js / app.js , /examples/dist/app.js файл буде поданий
path
і коли б ви використовувалиpublicPath
?