gulp Bower wiredep没有拿起bootstrap.css?

Rol*_*ndo 14 css bower gulp wiredep

我有一个index.html文件.在我的bower.json文件中,我有一个依赖:

"bootstrap": "~3.3.2"
Run Code Online (Sandbox Code Playgroud)

在gulp文件中,我有:

  gulp.src('./main.html')
    .pipe(wiredep({
      bowerJson: require('./bower.json')
    }))
    .pipe(gulp.dest('./'));
Run Code Online (Sandbox Code Playgroud)

当我这样做时,我看到所有的css和js都被生成了,但是没有看到bootstrap.css包含在inject中的任何地方,其他依赖项是.到底是怎么回事?

我认为必须有一个简单的解决方案吗?或者与grunt相比,gulp有问题吗?

更新:我正在向一个铁杆狂热狂热者发出警告,关于凉亭和节点如何与maven相比,以及如何在bower安装后你必须在下载后手动修改包的bower.json文件.如果有一些方法可以合法地不必修改bower.json或将其合并到构建过程中,而不必要求开发人员这样做...请更新!

小智 25

我们可以覆盖项目的bower.json中的主对象,而不是替换/修改bootstrap的bower.json.

"overrides":{
"bootstrap":{
  "main":[
  "dist/js/bootstrap.js",
  "dist/css/bootstrap.min.css",
  "less/bootstrap.less"
  ]
}}
Run Code Online (Sandbox Code Playgroud)

这适合我!


ism*_*iet 8

是的,因为@Helzgate说,bootstrap正在考虑将bootstrap.less作为默认样式文件而不是bootstrap.css,你可以通过转到

bower_components /引导/ bower.json

然后你可以清楚地看到主要属性持有以下值:

main": [
    "less/bootstrap.less",
    "dist/js/bootstrap.js"
  ]
Run Code Online (Sandbox Code Playgroud)

所以你要做的就是用dist/css/bootstrap.css替换less/bootstrap.less,如下所示:

"main": [
    "dist/css/bootstrap.css",
    "dist/js/bootstrap.js"
  ]
Run Code Online (Sandbox Code Playgroud)

和VOILA就是这样.


Hel*_*ate 6

我将root中最初指向*.less文件的bower.json文件更改为以下内容:

"main": ["dist/css/bootstrap.css"],
Run Code Online (Sandbox Code Playgroud)

它现在有效.

注意:我删除了bootstrap.js的条目,因为我不需要它.

  • 拉请求引导程序? (2认同)