Доброго времени суток.
В моем gulpfile.js три таска.
Первый таск отвечает за компиляцию jade-шаблонов в html-файлы, подключает все зависимости из файла-манифеста bower.json с помощью плагина wiredep
gulp.task('jade', function() {
gulp.src(config.path.dev.jade + '/index.jade')
.pipe(jade({
pretty: '\t'
}))
.pipe(wiredep({
ignorePath: '../'
}))
.pipe(gulp.dest('./src'))
.pipe(notify(config.message.jadeCompiled))
});
Результат после выполнения этого таска такой
<!-- bower:js-->
<script src="bower_components/jquery/dist/jquery.js"></script>
<script src="bower_components/nodernizr-dev/modernizr-latest.js"></script>
<!-- endbower-->
Второй таск заменяет путь к JQuery на таковой из Google CDN с помощью плагина gulp-google-cdn
gulp.task('cdn', function () {
return gulp.src('./src/index.html')
.pipe(googlecdn(require('./bower.json')))
.pipe(gulp.dest('./dist'))
.pipe(notify(config.message.cdnComplete))
});
Получаю такой результат:
<!-- bower:js-->
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="bower_components/nodernizr-dev/modernizr-latest.js"></script>
<!-- endbower-->
Третий таск нормализует все пути к скриптам, заменяя их на продакшн, с помощью повторного запуска wiredep
gulp.task('wiredep', function () {
return gulp.src('./dist/index.html')
.pipe(wiredep({
ignorePath: '../src/bower_components/',
exclude: 'jquery', // именно этой строчкой думал, что получится проигнорировать JQuery
fileTypes: {
html: {
replace: {
js: '<script src="js/vendor/{{filePath}}"></script>',
css: '<link rel="stylesheet" href="css/vendor/{{filePath}}" />'
}
}
}
}))
.pipe(gulp.dest('./dist'))
});
Получаю такой результат
<!-- bower:js-->
<script src="js/vendor/nodernizr-dev/modernizr-latest.js"></script>
<!-- endbower-->
А хочу получить вот такой, т.е. хочу, чтобы строчка с путями JQuery была проигнорирована
<!-- bower:js-->
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="js/vendor/nodernizr-dev/modernizr-latest.js"></script>
<!-- endbower-->
Возможно ли это сделать?