Я починаю працювати з webpackз node/expressнавколишнім середовищем розробляє ReactJSбоку сервера винесеним додатком з react-router. Я дуже заплутаний щодо ролі кожного пакета webpack для середовищ dev та prod (runtime).
Ось короткий зміст мого розуміння:
webpack: Це пакет, інструмент для об’єднання різних частин веб-програми та об’єднання в один файл .js (зазвичай bundle.js). Потім файл результатів подається у середовищі prod для завантаження додатком і містить усі необхідні компоненти для запуску коду. Особливості включають зменшення коду, мініфікацію тощо.
webpack-dev-server: Це пакет, який пропонує сервер для обробки файлів веб-сайтів. Він також створює один файл .js ( bundle.js) з клієнтських компонентів, але подає його в пам'ять. Він також має опцію ( -hot) контролювати всі будівельні файли та створювати новий пакет в пам'яті на випадок зміни коду. Сервер обслуговується безпосередньо у браузері (наприклад:) http:/localhost:8080/webpack-dev-server/whatever. Поєднання завантаження пам'яті, гарячої обробки та обслуговування браузера дозволяє користувачеві оновлювати додаток у браузері при зміні коду, ідеально підходить для середовища розробки.
Якщо у мене є сумніви щодо вищевказаного тексту, я справді не впевнений у вмісті нижче, тому, будь ласка, повідомте мені, якщо це необхідно
Поширеною проблемою при використанні webpack-dev-serverз node/expressє те, що webpack-dev-serverце сервер, як є node/express. Це робить це середовище складним для запуску як клієнта, так і деякого вузлового / експрес-коду (API тощо). ПРИМІТКА: Це те, з чим я стикався, але було б чудово зрозуміти, чому це відбувається більш докладно ...
webpack-dev-middleware: Це проміжне програмне забезпечення з тими ж функціями webpack-dev-server(зв’язування пам’яті, гаряче перезавантаження), але у форматі, який можна вводити в server/expressдодаток. Таким чином, у вас є свого роду сервер ( webpack-dev-serverвнутрішній сервер вузла). На жаль: це божевільна мрія ??? Як ця частина може розв’язати рівняння розробників та розробників та спростити життя
webpack-hot-middleware: Це ... Застряг тут ... знайшов цей шматок при пошуку webpack-dev-middleware... Не знаю, як ним користуватися.
ПРИМІТКА: Вибачте, є помилкове мислення. Мені дійсно потрібна допомога, щоб не сприймати ці варіанти в складних умовах. Якщо це незрозуміло, додайте більше пакетів / даних, які будуватимуть весь сценарій.
webpack-dev-middleware(і потенційноwebpack-hot-middleware), якщо хочете написати свій власний сервер розробки. Якщо немає певної функції, яку ви хочетеwebpack-dev-serverне мати, вам слід просто використовувати її.