我使用Yeoman创建了一个AngularJS应用程序。它还使用 cdnify 任务将 bower_components / angular / angular.js 转换为 // ajax.googleapis.com/ajax/libs/angularjs/1.2。 15 / angular.min.js 即可。生成的 index.html 包含以下代码:
<!-- 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/vendor/assets/javascripts/bootstrap.js"></script>
<!-- endbower -->
<!-- endbuild -->
还有一项任务可以组合,缩小和丑化所有脚本,因此这些脚本将合并为一个 vendor.js 文件。为避免 jquery.js 和 angular.js 包含在此过程中,我将其更改为:
<script src="bower_components/jquery/dist/jquery.js"></script>
<script src="bower_components/angular/angular.js"></script>
<!-- build:js scripts/vendor.js -->
<!-- bower:js -->
<script src="bower_components/bootstrap-sass-official/vendor/assets/javascripts/bootstrap.js"></script>
<!-- endbower -->
<!-- endbuild -->
当我运行 grunt serve:dist 时,运行cdnify任务并生成以下输出:
Running "cdnify:dist" (cdnify) task
Going through dist/404.html, dist/index.html to update script refs
我的 bower.json 看起来像这样:
{
"name": "myAmazingAngularApp",
"version": "0.0.0",
"dependencies": {
"jquery": "~1.11.0",
"angular": "1.2.x",
"bootstrap": "~3.1.1",
"angular-bootstrap": "~0.10.0"
}
}
有谁知道我做错了什么?我认为它应该是开箱即用的,所以我怀疑它是一个错误......
还有一个 .bowerrc 文件,其中包含以下内容:
{
"directory": "app/bower_components"
}
我尝试在运行"directory
时将此设置更改为bower_components"
:grunt cdnify
,但它没有帮助。