【问题标题】:Bower doesn't add dependency to index.htmlBower 不会向 index.html 添加依赖项
【发布时间】:2015-12-08 16:07:35
【问题描述】:

我正在尝试将 angular-flot 库添加到 yeoman 脚手架 angular 项目中。

我用

添加了它
bower i --save angular-flot

将其拉入我的 bower_components 目录,但没有将其添加到 index.html 文件中。

我手动添加了它(以及对 flot CDN 的引用),使用它可以正常工作

grunt serve

但是,当我这样做时

grunt build 

并从/dist 目录加载 index.html 文件,我得到一个错误,即不包括 angular-flot。所以我认为它不是通过缩小来实现的。

这就是我的 index.html 的相关部分的外观。我手动添加了endbowerendbuild之间的三行

<!-- build:js(.) scripts/vendor.js -->
<!-- bower:js -->
<script src="bower_components/jquery/dist/jquery.js"></script>
<script src="bower_components/angular/angular.js"></script>
<script src="bower_components/bootstrap-sass-official/assets/javascripts/bootstrap.js"></script>
<script src="bower_components/angular-animate/angular-animate.js"></script>
<script src="bower_components/angular-cookies/angular-cookies.js"></script>
<script src="bower_components/angular-messages/angular-messages.js"></script>
<script src="bower_components/angular-resource/angular-resource.js"></script>
<script src="bower_components/angular-route/angular-route.js"></script>
<script src="bower_components/angular-sanitize/angular-sanitize.js"></script>
<script src="bower_components/angular-touch/angular-touch.js"></script>
<!-- endbower -->

<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/flot/0.8.2/jquery.flot.min.js"></script>
<script src="bower_components/angular-flot/angular-flot.js"></script>

<!-- endbuild -->

【问题讨论】:

    标签: angularjs bower yeoman yeoman-generator-angular


    【解决方案1】:

    您是否尝试过运行grunt wiredep?这应该将依赖项添加到 index.html。 此外,您需要确保您的依赖项包含在 app.js 中:

    angular.module('yourApp', [
      'ngMessages',
      'ngRoute',
      'ngSanitize',
      //...
      'angular-flot'
    ])
    

    【讨论】:

    • 我包括依赖项,我应该提到这一点。
    • grunt wiredep 没有添加它,它完成没有错误。它确实添加了其他依赖项。我将更新我的问题以包含 index.html 的相关部分
    • 在 grunt 构建期间的“cdnify”步骤中,grunt 可能会变得混乱。可能是因为您添加了手动 CDN 条目,但只是猜测。也许删除所有手动添加的东西并重新连接 / grunt 构建它?
    • 删除手动内容并重新运行 grunt wiredep 确实添加了 angular-flot 依赖项。但是,我仍然需要手动添加 Flot 库的 CDN 引用(它不包含在 angular-flot 中)。 grunt build 步骤去除了手动 CDN 参考。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-07
    • 2013-08-18
    • 1970-01-01
    • 2017-07-03
    相关资源
    最近更新 更多