Bower和main-bower-files非常棒,但是当与Angular Bootstrap UI一起使用时,安装/包含的内容比需要的要多。
基本上:Angular Bootstrap UI,取代了对bootstrap.js的需求和它的jquery依赖。但是在安装bootstrap时,安装了jquery,然后我的gulp任务使用了main-bower-files,在我的html文件中包含了jquery和bootstrap.js。
有没有办法告诉bower,和/或main-bower-files和/或Bootstrap,不再需要jquery和bootstrap.js。
到目前为止,我尝试在bower_components / bootstrap / bower.json中评论jquery依赖项和dist / js / bootstrap.js行,但文件仍然被包含在内。
答案 0 :(得分:6)
1)切换到wiredep ,我建议使用。然后你可以做这样的事情:
gulp.task('wiredep', function () {
var wiredep = require('wiredep').stream;
gulp.src('app/*.html')
.pipe(wiredep({
directory: 'app/bower_components',
exclude: ['bootstrap']
}))
.pipe(gulp.dest('app'))
});
请注意,上面将删除整个引导程序,而不仅仅是它的.js文件。 exclude
数组也可以包含regexp,如果要保留实例样式,可能需要这样做。
在您的HTML文件中(对于javascript):
将js
替换为要注入样式的css
。
2)覆盖Bootstrap的凉亭主文件:为main-bower-files提供以下选项:
{
"overrides": {
"bootstrap": {
"main": [
// files you want to include
]
}
}
}
您必须检查不想排除的内容并将其添加到上面的main
数组中。