Size: a a a

Webpack — русскоговорящее сообщество

2019 March 20

AK

Anton Kharkhonov in Webpack — русскоговорящее сообщество
JSON Jenny 💖
Проюлема не решается всё равно. Толку от такого особо нет. Вебпачек не умрет, ибо что лучше: грузить 100500 модулей или один файл?
ммм, а в одном файле у тебя только один модуль в 300байт? в обоих ситуациях ты всеравно грузишь клиенту 100500 модулей
источник

AK

Anton Kharkhonov in Webpack — русскоговорящее сообщество
тем более сейчас, когда браузер оптимизирует паралельную загрузку скриптов и кеширует их. И инвалидироваться будет только один файл при изменении а не весь бандл как вебпачек + если если в проекте стайледы есть или другие ксс ин джс
источник
2019 March 21

J💖

JSON Jenny 💖 in Webpack — русскоговорящее сообщество
Anton Kharkhonov
ммм, а в одном файле у тебя только один модуль в 300байт? в обоих ситуациях ты всеравно грузишь клиенту 100500 модулей
1мб.
источник

J💖

JSON Jenny 💖 in Webpack — русскоговорящее сообщество
Anton Kharkhonov
тем более сейчас, когда браузер оптимизирует паралельную загрузку скриптов и кеширует их. И инвалидироваться будет только один файл при изменении а не весь бандл как вебпачек + если если в проекте стайледы есть или другие ксс ин джс
Там всё не так уж хорошо
источник

VB

Vyacheslav BOzere in Webpack — русскоговорящее сообщество
Всем привет. Хочу для webpack прицепить sass. В package-json нужно указать место куда будет компилироваться, как правидльно указать путь ?
Вот мой вариант : "compile:sass": "node-sass 'frontend-master' 'frontend-master' -w",
источник

VB

Vyacheslav BOzere in Webpack — русскоговорящее сообщество
"compile:sass": "node-sass 'your main scss file location' 'your compiled css file location' -w" Надо указывать путь из проекта до файла или путь от диска
источник

SM

Sergey Mochalov in Webpack — русскоговорящее сообщество
Относительно самого package.json
источник

SM

Sergey Mochalov in Webpack — русскоговорящее сообщество
Открой любой проект на github и посмотри
источник

SM

Sergey Mochalov in Webpack — русскоговорящее сообщество
Куча ж примеров там
источник

ZS

Znacovean Simion in Webpack — русскоговорящее сообщество
Всем доброго времени суток. У кого-нибудь получилось решить проблему перехода с extract-text-webpack-plugin на mini-css-extract-plugin? Всем кто перешел как и я с 3 на 4 версию вебпака, пришлось править конфиги. У mini-css или у 4го вебпака есть существенный недостаток: при правке стилевого файла, создается и триггерится одноименный js файл. Я юзаю browsersync отдельно от вебпака и это ломает механизм inject, так как после правок в стилях срабатывает вотчер и на скриптах, стили пытаются инжектиться без перезагрузки, в то время как при обнаружении правок в скриптах, страница перезагружается.
Снял на видео суть проблемы на 4 вебпаке от и до: https://cl.ly/73e1a91d894f
Если запустить extract-text-webpack-plugin на 4 вебпаке, вопреки ворнингам, с виду всё примерно так, как нужно чтоб работало: https://cl.ly/d8eb8d65604c (за исключением того, что, снова же, почему-то триггерятся и обновляются все чанки вместо нужного...)
В поисках товарищей по несчастью, нашел плагин, который по логике должен удалять этот самый магический js чанк, но, или я неверно понял назначения плагина, либо у меня руки кривые, и он мне не помог. Я им в issue накатал https://github.com/fqborges/webpack-fix-style-only-entries/issues/15

Буду благодарен за любую инфу или помощь в решении проблемы.
источник

A

Anton in Webpack — русскоговорящее сообщество
Znacovean Simion
Всем доброго времени суток. У кого-нибудь получилось решить проблему перехода с extract-text-webpack-plugin на mini-css-extract-plugin? Всем кто перешел как и я с 3 на 4 версию вебпака, пришлось править конфиги. У mini-css или у 4го вебпака есть существенный недостаток: при правке стилевого файла, создается и триггерится одноименный js файл. Я юзаю browsersync отдельно от вебпака и это ломает механизм inject, так как после правок в стилях срабатывает вотчер и на скриптах, стили пытаются инжектиться без перезагрузки, в то время как при обнаружении правок в скриптах, страница перезагружается.
Снял на видео суть проблемы на 4 вебпаке от и до: https://cl.ly/73e1a91d894f
Если запустить extract-text-webpack-plugin на 4 вебпаке, вопреки ворнингам, с виду всё примерно так, как нужно чтоб работало: https://cl.ly/d8eb8d65604c (за исключением того, что, снова же, почему-то триггерятся и обновляются все чанки вместо нужного...)
В поисках товарищей по несчастью, нашел плагин, который по логике должен удалять этот самый магический js чанк, но, или я неверно понял назначения плагина, либо у меня руки кривые, и он мне не помог. Я им в issue накатал https://github.com/fqborges/webpack-fix-style-only-entries/issues/15

Буду благодарен за любую инфу или помощь в решении проблемы.
Не понял как extract-text-plugin заново эмитит файлы, с 4 вебпаком не будет проблем если ставить бету. Вообще для дева не обязательно выносить стили в отдельные css файлы. Можно воспользоваться style-loader'ом. А в проделанной уже выносить
источник

R

RusaXXX in Webpack — русскоговорящее сообщество
В webpack.conf указал  context. И теперь появился файл, который лежит вне контекста. Можно как-то для одного  
entry
указать путь без учета
context
Или я могу от своего контекста как то плясать в другие директории? Или как добавить entry вне контекста?
источник

NK

ID:291615638 in Webpack — русскоговорящее сообщество
ID:291615638
Можно ли как-то задать кастомный путь до babel.config.js, если я использую babel-loader?
Почему-то сразу не пришло в голову, что babel.config.js – модуль, и его можно подключить в webpack.config.js
источник

AD

Alexey Donetskiy in Webpack — русскоговорящее сообщество
Привет, ребят, подскажите плз, кто-то сталкивался с тем, что вебпак конвертирует импорты в сторки?

Первый скрин - что получилось
Второй скрин - истоник в коде
источник

AD

Alexey Donetskiy in Webpack — русскоговорящее сообщество
источник

AD

Alexey Donetskiy in Webpack — русскоговорящее сообщество
источник

ZS

Znacovean Simion in Webpack — русскоговорящее сообщество
Anton
Не понял как extract-text-plugin заново эмитит файлы, с 4 вебпаком не будет проблем если ставить бету. Вообще для дева не обязательно выносить стили в отдельные css файлы. Можно воспользоваться style-loader'ом. А в проделанной уже выносить
Вы демку смотрели? В дополнение, для ясности скажу: я работаю с pug шаблонизатором, на express поднятом сервере, то есть никаких pug-loader и devServer у меня нету. В шаблоне мы подрубаем как правило common.css и pageName.css. Сервер настроен на распознавание этих файлов из папки билда, и если их там не будет, стили логично что не загрузятся. Поэтому экстрактить в режиме dev мне надо полюбому. Насчет бета версии вебпака 4 тоже не понял, разницы в версиях 4ки не заметил, mini-css плагин работает одинаково, а именно, при правках css файла, проимпортированного внутри одного из entry js файлов, триггерится изменения и у css на выходе, и у js, а нужно как-то понять, кто виноват в этом, плагин, или вебпак, и что можно сделать с этим, так как я не могу сделать мониторинг с помощью browsersync стилевых файлов для их инжектинга без перезагрузки страницы ( аля хотрилоад , так как джска также меняется, а вотчер browsersync на js файла перезагружает страницу. Есть у кого еще идеи?
источник

A

Anton in Webpack — русскоговорящее сообщество
Znacovean Simion
Вы демку смотрели? В дополнение, для ясности скажу: я работаю с pug шаблонизатором, на express поднятом сервере, то есть никаких pug-loader и devServer у меня нету. В шаблоне мы подрубаем как правило common.css и pageName.css. Сервер настроен на распознавание этих файлов из папки билда, и если их там не будет, стили логично что не загрузятся. Поэтому экстрактить в режиме dev мне надо полюбому. Насчет бета версии вебпака 4 тоже не понял, разницы в версиях 4ки не заметил, mini-css плагин работает одинаково, а именно, при правках css файла, проимпортированного внутри одного из entry js файлов, триггерится изменения и у css на выходе, и у js, а нужно как-то понять, кто виноват в этом, плагин, или вебпак, и что можно сделать с этим, так как я не могу сделать мониторинг с помощью browsersync стилевых файлов для их инжектинга без перезагрузки страницы ( аля хотрилоад , так как джска также меняется, а вотчер browsersync на js файла перезагружает страницу. Есть у кого еще идеи?
Перезагрузка и хотрелоуд это разные вещи. При дев разработки в бандлах и css чаках в именах используется хэш?
источник

ZS

Znacovean Simion in Webpack — русскоговорящее сообщество
Anton
Перезагрузка и хотрелоуд это разные вещи. При дев разработки в бандлах и css чаках в именах используется хэш?
нет.
потому что у меня нету доступа к html через вебпак.
Я использую шаблонизатор pug отдельно и в режиме разработки запускается сервер на Express который не компилирует физически файлы а держит и отдает содержимое из памяти. поэтому в шаблонах должны быть статические имена на подключаемые ресурсы.
В моём случае каждая страница (например index) подключает common.js, index.js скрипты и одноименные стилевые файлы
вебпаку в качестве entry отдаётся массив этих Js файлов, внутри этих js файлов перво-наперво идёт импорт одноименного стилевого файла, который extract-плагином экспортируется в билд папку, на которую настроен экспресс сервер и всё работает гуд. Но даже на вебпаке 3-ем меня смущал тот факт, что при сохранении любого css файла триггерились изменения всех ентрис-ов. То есть дата последнего изменения таковых в папке билда всегда обновлялась, но каким-то образом extract-text-webpack-plugin функционировал иначе нежели mini-css-extract плагин, потому как browsersync настроенный на вотчинг билд папки в первом случае замечал правки только в стилях, а сейчас замечает что и js изменился..((( Это можно увидеть промотав первое видео к концу где я показывают что проихсодит при изменении стилевого файла с css-mini плагином, и второе видео - с старым экстра-текст-плагином.
источник

ZS

Znacovean Simion in Webpack — русскоговорящее сообщество
Перечитал тонну ишьюс и мануалов, но везде рассматривают вебпаковский дев-сервер и заостряют внимание на то как с ним работать.
В моём же случае все эти чанки и хеши до одного места, когда мы не проводим разметку (хтмл) через вебпак. В моём случае это оправдано тем, что я делаю обычную вёрстку без фреймворков типа реакта, а использование pug в качестве шаблонизатора вместе с вебпак, при инкрементальной сборке проекта на 10+ страниц создает дыру в производительности, в сравнении с подходом, в котором мы разделяет юзание шаблонизатора и сервера отдельно от вебпака, ставя на плечи вебпака только работу с скриптами и стилями. Кто-то пошёл дальше, и оставил в задачах вебпака только работу со скриптами. Мне же нравится компонентный подход (импорт стилей в js файлах), поэтому хочется понять в чём причина такого поведения css-mini плагина - из-за самго плагина или из-за особенностей самого вебпака 4 версии.
источник