2015-10-24 7 views
6

У меня есть эта конфигурация выхода в моем webpack.config файле:bundle.js выходной файл и WebPack-DEV-сервер

config = { 
      ... 
      output: { 
       path: path.resolve(__dirname, 'dist'), 
       filename: 'bundle.js', 
       publicPath: 'http://localhost:8090/' 
      }, 
... } 

The bundle.js не написанными на путь, указанный в path; он доступен только через веб-сервер , тогда как я хотел бы обоим.

Что я должен изменить, чтобы иметь как файл, так и веб-сервер?

ответ

13

При запуске webpack-dev-сервера вы на самом деле не собираете и не перестраиваете пакет веб-пакетов, а обслуживаете его только из памяти.

По моему опыту, путь вокруг этого состоит в том, чтобы иметь два экземпляра, если вы хотите иметь фактическую сборку, а также webpack-dev-сервер. Так, в одном окне терминала имеют

webpack --watch 

бег, (WebPack --watch восстановит реальное расслоение). Затем, в другом терминале есть

webpack-dev-server 

работает (WebPack-DEV-сервер будет жить reaload и служить из памяти новой сборки).

+0

Ok получил его ... Что это обычная практика, а затем? Использовать webpack-dev-сервер во время разработки и вызывать webpack только при создании пакета для использования в производстве? Когда люди генерируют файл bundle.js? – mguijarr

+0

@mguijarr Хотя это именно то, что я делаю большую часть времени (используйте webpack-dev-server во время разработки, а затем позвоните в веб-пакет, когда я готов к производству), я не уверен, что это лучшая практика или если есть лучший/более эффективный способ сделать это, и был бы признателен за любые другие взгляды на это. –

1

Этот плагин заставит webpack-dev-server также записывать файлы связок, исключая необходимость запуска двух процессов в терминале.

gajus/write-file-webpack-plugin

Смежные вопросы