Как связать различные зависимости в производстве против разработки
Есть ли лучшая практика для настройки Bower.json, чтобы файлы для разработки и файлы для производства были настроены в разных областях и хорошо работали с такими инструментами, как WireDep?
Я использую этот плагин Angular для Google мест https://github.com/kuhnza/angular-google-places-autocomplete
Bower.json для этого проекта содержит как необработанные, так и уменьшенные файлы, перечисленные в основной структуре данных.
Bower.json
{
"name": "angular-google-places-autocomplete",
"version": "0.2.7",
"main": [
"./src/autocomplete.js",
"./src/autocomplete.css",
"./dist/autocomplete.min.js",
"./dist/autocomplete.min.css"
],
"dependencies": {
"angular": "^1.2.x"
},
"devDependencies": {
"angular-mocks": "^1.2.x"
},
"ignore": []
}
Когда я запускаю задачу wiredep, она включает в себя как уменьшенные, так и необработанные файлы в моем Index.html.
/ ------------------------------------------------------------------------------------------
// Wire Dependenciews from root bower.json in the index.html, e.g. Inject bower components
// ------------------------------------------------------------------------------------------
gulp.task('wiredep', function () {
var wiredep = require('wiredep').stream;
gulp.src('app/styles/*.scss')
.pipe(wiredep({
ignorePath: /^(\.\.\/)+/
}))
.pipe(gulp.dest('app/styles'));
gulp.src('app/*.html')
.pipe(wiredep({
exclude: ['bootstrap-sass-official'],
ignorePath: /^(\.\.\/)*\.\./
}))
.pipe(gulp.dest('app'));
});
Сгенерированный выход
<script src="/bower_components/angular-google-places-autocomplete/src/autocomplete.js"></script>
<script src="/bower_components/angular-google-places-autocomplete/dist/autocomplete.min.js"></script>