Grunt wiredep无法连接某些Bower组件。

4
我正在使用yeoman webapp生成器生成一个模板来启动我的工作。此时,我的bower.json文件看起来像这样:
  {
    "name": "sample-project",
    "private": true,
    "dependencies": {
      "bootstrap-sass": "~3.3.5",
      "modernizr": "~2.8.3",
      "fontawesome": "~4.3.0",
      "jquery.smooth-scroll": "~1.5.5",
      "animate.css": "~3.3.0",
      "jquery.appear": "*"
    },
    "overrides": {
      "bootstrap-sass": {
        "main": [
          "assets/stylesheets/_bootstrap.scss",
          "assets/fonts/bootstrap/*",
          "assets/javascripts/bootstrap.js"
        ]
      }
    },
    "devDependencies": {
      "chai": "~3.0.0",
      "mocha": "~2.2.5"
    }
  }
现在,在cmd提示符下,我输入以下内容,同时grunt watch正在运行:
bower install bootstrap-datepicker -S

然后我发现"bootstrap-datepicker": "~1.4.0"被插入到依赖项部分,然后...

<script src="bower_components/bootstrap-datepicker/js/bootstrap-datepicker.js"></script>

当我使用wiredep将它自动引入到我的index.html文件中时,它就变成了这样

  <!-- build:js(.) scripts/vendor.js -->
  <!-- bower:js -->
     .
     .
     <script src="bower_components/bootstrap-datepicker/js/bootstrap-datepicker.js"></script>
  <!-- endbower -->
  <!-- endbuild -->

然后我尝试为我的web应用程序安装另一个bower组件。
bower install country-region-selector -S

下一步发生的事情是我发现 "country-region-selector": "~0.1.8" 与 bootstrap-datepicker 一样,在 bower.json 的 dependencies 部分,然而对应的……
<script src="bower_components/country-region-selector/dist/crs.min.js"></script>

我无法将wiredep引入到我的index.html中。

所以我的问题是为什么grunt wiredep在某些bower组件上不起作用?form.validation也会出现同样的情况。有人能解决这个问题吗?

1个回答

3

grunt-wiredep 的工作方式非常特定。依赖关系应该在 bower.josn 文件中的 main 属性内部的数组中列出,就像你从 bootstrap 中提到的示例一样。

你面临的问题可能是这些包没有一个 main 属性,或者它正在使用字符串中的多个文件而不是数组。

为了解决这个问题,你可以始终定义一个覆盖包 main 属性的方式,如下所示...

在你的 grunt 文件中:

wiredep: {
    ...
    overrides: {
      'package-name': {
        'main': [
          'link-to-css-file.css',
          'link-to-js-file.js'
        ]
      },
    },
},

@Ahmed Alfy - 你知道这里发生了什么吗:http://stackoverflow.com/questions/37384538/grunt-task-wiredp-is-not-injecting-ngcordova?noredirect=1#comment62335359_37384538 - Smitha

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接