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

Обсуждения webpack, лоадеров, плагинов и сборок Правила: http://bit.ly/our_etiquette См. также: @rollup_ru, @react_js, @vscode_ru, @macos_ru, @js_ru

974 members

Архив канала @webpack_ru 19 апреля 2018 г.

08:04:08 ДП
User 228307773
господа, подскажите такую вещь, установил в проект npm пакет из локальной папки, типа npm install --save d:/dev/element, вебпак при сборке проекта выдает ошибки
ERROR in ../element/lib/element-ui.common.js
[DEV] Module not found: Error: Can't resolve 'element-ui/lib/locale' in 'D:\dev\element\lib'
08:06:36 ДП
User 228307773
Почему он тянет что-то по относительному пути? Я думал он должен брать из локального node_modules? Что я делаю не так?
09:12:57 ДП
User 134905826
User 228307773
Почему он тянет что-то по относительному пути? Я думал он должен брать из локального node_modules? Что я делаю не так?
посмотри секцию конфига resolve
09:13:19 ДП
User 228307773
а, пардон, не с вебпаком связан вопрос, не заметил что нпм локальные модули не копирует при установке а линк делает
09:13:52 ДП
User 228307773
решилось с помощью  npm pack и дальнейшей установкой из архива
11:19:14 ДП
User 442584648
как ускорить комплиривоание сборку вебпака? 6 сек собирает, можно как-то отключить временно мининфикацию во всех лоадерах или нужно в настройках каждого копаться? что еще можно сделать?
11:51:34 ДП
User 41482050
Каким лоадером собирать images, которые в css прописаны как url(<url>) ?
11:52:03 ДП
User 212795634
file-loader
11:59:10 ДП
User 41482050
User 212795634
file-loader
Спасибо. Вот им и собираю. Просто такая штука, у меня статика находится в /static/ директории сервера, а при сборке file-loader кладет изображения в /static/<images> сам бандл находится в /static/bundle, а в css получается url(<image_name>), в итоге, url получается <host>/<image_name>. Он автоматически же должен директорию рассчитывать, как output path?
12:00:18 ПП
User 41482050
Или нужно явно задавать publicPath?
12:00:58 ПП
12:01:32 ПП
User 41482050
Спасибо
12:05:09 ПП
User 212795634
Вообще любые проблемы с путями решаются только методом тыка
12:36:10 ПП
User 76662447
Эт точно
02:58:41 ПП
User 204484928
Привет. Подскажите пожалуйста

У меня есть 2 точки входа:
index - основной код
index.cli - CLI приложение, которое внутри себя вызывает основной код

Как через splitChunks сделать так, чтобы в бандл index.cli.js прилетел только код CLI приложения, а все дублирующиеся чанки между index и index.cli остались в index.js бандле?

Делаю вот так:

splitChunks: {
            cacheGroups: {
                index: {
                    name: 'index',
                    chunks: 'initial',
                    minChunks: 2
                }
            }
        }

По размерам файлов выглядит корректно,
Но ловлю в рантайме ошибку 
Cannot read property 'call' of undefined

Вот тут:
modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);

Webpack, соответственно, 4.6.0
03:30:12 ПП
User 182613717
ты хочешь сделать чтобы одно энтри зависело от другого или всё таки вынести общие модули в отдельный чанк? тот кусок кода который ты скинул вынесет общие модули в отдельный чанк, но они сами себя не вызовут, можешь открыть сгенерированный бандл и проверить
03:49:24 ПП
User 204484928
Проблема быда в том, что судя по всему с target: node это было делать бессмысленно
04:29:37 ПП
User 159087493
Всем привет
04:30:05 ПП
User 159087493
Есть ли возможность заполифилить Object.values через бабель?
es7-shim пришлось подключить в entry
С бабелем не вышло, мб кто сталкивался?
04:41:00 ПП
User 261885262
User 159087493
Есть ли возможность заполифилить Object.values через бабель?
es7-shim пришлось подключить в entry
С бабелем не вышло, мб кто сталкивался?
https://babeljs.io/docs/usage/polyfill/
babeljs.io/docs/en/babel-polyfill
Babel includes a [polyfill](https://en.wikipedia.org/wiki/Polyfill_(programming)) that includes a custom [regenerator runtime](https://github.com/facebook/regenerator/blob/master/packages/regenerator-runtime/runtime.js) and [core-js](https://github.com/zloirock/core-js).
04:41:53 ПП
User 159087493
User 261885262
https://babeljs.io/docs/usage/polyfill/
babeljs.io/docs/en/babel-polyfill
Babel includes a [polyfill](https://en.wikipedia.org/wiki/Polyfill_(programming)) that includes a custom [regenerator runtime](https://github.com/facebook/regenerator/blob/master/packages/regenerator-runtime/runtime.js) and [core-js](https://github.com/zloirock/core-js).
В core-js object entries и values нет
04:42:03 ПП
User 159087493
Подключал я его
04:43:35 ПП
User 159087493
Я думал babel-preset-env как то настраивается
06:26:01 ПП
User 212795634
User 159087493
Я думал babel-preset-env как то настраивается
По моему только 7 бабель это может
06:26:24 ПП
User 212795634
Подключаешь @babel/polyfill и в preset-env пишешь нужные браузеры, он добавит
11:24:35 ПП
User 217644509
Всем привет. Возник вопрос, хочу узнать, может уже кто-то сталкивался и подскажет рабочие решения.
Кейс: есть виджет, отдаётся клиенту бандлом, куда слиты все необходимые библиотеки; одна точка входа, инициализирующий слой - разибираются подаваемые параметры, проверки - ручная инициализация или в авторежиме запускаться и прочие вспомогательные вещи - затем уже монтируется react-приложение; клиенту отдаётся вариант подключения, как и у большинства всех виджетов - <script src="Widget.js"/>, то есть без всяких дополнительных телодвижений со стороны клиента. Собственно проблема - вынести вендор-часть отдельно, для возможности кэширования на стороне клиента, весь виджет не имеем права кэшировать. Схема пока обрисовывается следующая: выносится библиотечная часть в отдельный файл с хэшем, часть приложения вместе с инициализирущим слоем запрашивает недостающую часть, от которой зависит; желательно это реализовать автоматом при сборке бандла. Вопрос - кто-то подобное делал, есть какие-нибудь намётки. Всё что просматривал - подразумевает ручное подключение библиотечной части и части приложения: <script src="vendor.hash.js/><script src="app.js/>
11:26:33 ПП
User 217644509
User 139059931
Ребят, помогите пожалуйста с код сплитингом.
есть (к примеру) пакеты: 'components' и 'logic'.
я хочу импортировать их в bundle и инициализировать, разделив весь код на 4 чанка:
1. Bundle - основной, содержит Immutable.js, подгружает модули.
2. Components - тоже содержит immutable.js
3. Logic - какой-то пакедж
4. Common - зависимости из нод модулей.
ага, вот нашёл похожее было обсуждение, итогом правда решение какое-то было или нет - не ясно @bitaru, может что-нибудь подскажешь?