TypeError: не имеет метода isAbsolute

Я хочу минимизировать любой css в своей папке, где я использую плагин gulp-clean-css для gulp.

Мой код:

gulp.task('CSS-Pack', function () {
    return gulp.src(['Content/App.css', './Content/ApprovalForm.css'])
               .pipe(concat('stylesheets.css'))
               .pipe(cleanCSS({ debug: true }, function (details) {
                   console.log(details.name + ': ' + details.stats.originalSize);
                   console.log(details.name + ': ' + details.stats.minifiedSize);
               }))
               .pipe(gulp.dest('build/'));
});


gulp.task('CSS-PackAll', function () {
    return gulp.src('Content/*.css')
               .pipe(concat('stylesheets.css'))
               .pipe(cleanCSS({ debug: true, specialComments: false }, function (details) {
                   console.log(details.name + ': ' + details.stats.originalSize);
                   console.log(details.name + ': ' + details.stats.minifiedSize);
               }))
               .pipe(gulp.dest('build/'));
});

Моя задача CSS-Pack работает, но когда я запускаю задачу CSS-PackAll, возникает следующая ошибка:

Там, где я использую minify-css (я хочу использовать gulp-clean-css, потому что minify-css устарел), плагин CSS-PackAll работает..

:\Users\gkv\TFS\SharePoint Online\LirexAddHolidayRequest\node_modules\gulp-clean-css\node_modules\clean-css\lib\reader\rewrite-url.js:45 return path.isAbsolute(uri); ^ TypeError: объект # не имеет метода isAbsolute в isAbsolute (C:\Users\gstev\TFS\SharePoint Online\LirexAddHolidayRequest\node_modules\gulp-clean-css\node_modules\clean-css\lib \reader\rewrite-url.js:45:15) при перебазировании (C:\Users\gkrystev\TFS\SharePoint Online\LirexAddHolidayRequest\node_modules\gulp-clean-css\node_modules\clean-css\lib\reader\rewrite- url.js:23:7) по адресу rewriteUrl (C:\Users\gkrystev\TFS\SharePoint Online\LirexAddHolidayRequest\node_modules\gulp-clean-css\node_modules\clean-css\lib\reader\rewrite-url.js:114 :5) в rebaseSourceMapComment (C:\Users\gkrystev\TFS\SharePoint Online\LirexAddHolidayRequest\node_modules\gulp-clean-css\node_modules\clean-css\lib\reader\rebase.js:78:45) Процесс завершен с кодом 8.


person Васил Кунчев    schedule 10.03.2017    source источник
comment
Можешь попробовать пару вещей? Используйте 'Content/*.css' в задаче CSS-Pack и посмотрите, что получится. Кроме того, попробуйте удалить дополнительный параметр конфигурации specialComments, который был тормозным изменением по сравнению с предыдущей версией в вашей задаче CSS-PackAll.   -  person Wilmer SH    schedule 10.03.2017
comment
У меня в папке есть файлы bootstrap css Content/*.css   -  person Васил Кунчев    schedule 10.03.2017
comment
что это значит?   -  person Wilmer SH    schedule 10.03.2017


Ответы (1)


Я понимаю, что, строго говоря, это не ответ на вашу проблему, но я столкнулся с этой точной ошибкой при использовании gulp-clean-css для минимизации нашего CSS и отследил проблему до одной строки в нашем исходном коде:

background-image: url('/img/cloader.gif') no-repeat center top;

Возникла проблема с обработкой относительного URL-адреса; в нашем случае нам больше не нужен был этот стиль, и его удаление решило проблему. Надеюсь это поможет.

person Joe Glover    schedule 25.03.2017