Javascript-форум (https://javascript.ru/forum/)
-   Сборка проекта, утилиты (https://javascript.ru/forum/server-tools/)
-   -   Webpack. Как сделать сборку из сборки с сохранением SourceMap (https://javascript.ru/forum/server-tools/77162-webpack-kak-sdelat-sborku-iz-sborki-s-sokhraneniem-sourcemap.html)

ZVanoZ 01.04.2019 15:08

Webpack. Как сделать сборку из сборки с сохранением SourceMap
 
Всем привет.
Вопрос: как сделать сборку из сборки с сохранением sourcemap?

Моя заготовка тут https://github.com/ZVanoZ/webpack4-test01
Использал 'webpack-concat-plugin' и 'webpack-merge-and-include-globally' - сборки js собираются, но SourceMap для "module-all.js" нерабочий.

1. Webpack используется тупо для объединения JS-файлов старого типа.
Т.е. нет require и стандартная схема работы через entry не пашет.
2. Алгоритм объединения.
2.1. Первичная сборка.
"./frontend/Module1/script1.js" + "./frontend/Module1/script2.js" >> "./public/bundle/Module1.js|min.js"
"./frontend/Module2/script1.js" + "./frontend/Module2/script2.js" >> "./public/bundle/Module2.js|min.js"
Тут все ОК.
Подключенные скрипты работают, исходники по SourceMap отображаются и дебажатся.
Тестовый HTML тут https://github.com/ZVanoZ/webpack4-t...-separate.html
2.2. Вторичная сборка. Т.е. "сборка из сборок".
"./public/bundle/Module1.js|min.js" + "./public/bundle/Module2.js|min.js" >> "./public/bundle/module-all.js|min.js"
Тут скрипты работают, но не отображаются исходники из SourceMap.
Тестовый HTML тут https://github.com/ZVanoZ/webpack4-t...moduleAll.html

ZVanoZ 05.04.2019 09:28

Не нашел ничего подходящего.
Пришлось написать плагин-обертку для 'webpack-concat-plugin'.
Repo NPM
github


Корректные SourceMap получаются только в режиме uglify : true.
Если не включать минимизацию, то работает "concat-with-sourcemaps" issue, а он дает некорректную карту. Когда автор поправит ошибку, тогда можно будет пользоваться режимом без минимификации.

PS: если кто-то найдет другой плагин, просьба отписаться.


Часовой пояс GMT +3, время: 22:42.