В этом проекте я использую gulp-uglify версии 3.0.1 и хочу сохранить комментарии, содержащие тексты лицензий в выводе.
На странице проектов указано, что
Most of the minify options from the UglifyJS API are supported.
и этот ответ показывает, как передать параметры минимизации в плагин.
В Readme UglifyJS указано, что для сохранения текстов лицензий
You can pass --comments to retain certain comments in the output. By default it will keep JSDoc-style comments that contain "@preserve", "@license" or "@cc_on" (conditional compilation for IE)
Итак, я попытался:
.pipe(uglify({
mangle: true,
output: {
beautify: true,
comments: "all"
}
}))
Но поскольку даже указание "all"
не приводит к комментариям об атрибуции лицензии, я предполагаю, что параметр минимизации comments
ведет себя иначе, чем аргумент командной строки --comments
.
Я также попробовал preserveComments
, найденный здесь, но это просто генерирует:
[13:37:42] GulpUglifyError: unable to minify JavaScript
Caused by: DefaultsError: `preserveComments` is not a supported option
Есть ли способ добиться того, что предлагает аргумент командной строки через плагин gulp-uglify
? Если это невозможно, могу ли я использовать плагин webpack?
Существует это временное решение, указав регулярное выражение, но я хочу использовать функциональность непосредственно из UglifyJS, если это возможно. Кроме того, он также не хранит такие заголовки лицензий.
comments
в параметрах вывода с таким же поведением. Так что должно работать так, как вы описываете. Сообщите об этом как об ошибке. - person Boaz - CorporateShillExchange   schedule 19.12.2018