当前我写一个grunt build文件;使用" usemin",我在html中创建了3个块,该块将创建3个文件资产。min.js,lib.min.js等。
<!-- build:js js/assets.min.js -->
<script type="text/javascript" src="app/assets/js/lib/angular.min.js"></script>
<script type="text/javascript" src="app/assets/js/lib/angular-cache.min.js"></script>
<script type="text/javascript" src="app/assets/js/lib/angular-route.min.js"></script>
<script type="text/javascript" src="app/assets/js/lib/angular-animate.min.js"></script>
<script type="text/javascript" src="app/assets/js/lib/angular-touch.min.js"></script>
<script type="text/javascript" src="app/assets/js/lib/angular-cookies.min.js"></script>
<script type="text/javascript" src="app/assets/js/lib/jquery-1.10.1.min.js"></script>
<script type="text/javascript" src="app/assets/js/lib/jqueryui.min.js"></script>
<script type="text/javascript" src="app/assets/js/lib/bootstrap.min.js"></script>
<script type="text/javascript" src="app/assets/js/lib/bootstrap-switch.min.js"></script>
<!-- endbuild -->
这很好。但是我面临两个主要问题...
- Angular显示错误"未接收错误[$喷油器:Modulerr] ..
- 看来Usemin也正在重新化文件。
我还尝试了第二个选项,只需置于这些文件即绕过缩小步骤避免使用usemin ..仍然是同一错误
请指导
Angular使用称为依赖项注入的东西来解决您的参数。Angular知道每个对象的名称是什么。
" $ scope"将以范围对象初始化,因为它被命名为" $ scope"。在Usemin之后,此变量将被称为" A"之类的其他东西来保存字节。Angular不知道什么是" A"并引发错误。
您可以这样解决此问题:
-
在这里阅读有关角应用的缩小http://docs.angularjs.org/tutorial/step_05
-
手动遵循指南,或者使用 ngmin 在运行uglify之前。
希望这会有所帮助!
您可以通过两种方式解决此问题。
1.在Usemin Block中使用未启动的文件
<!-- build:js js/assets.min.js -->
<script type="text/javascript" src="app/assets/js/lib/angular.js"></script>
<script type="text/javascript" src="app/assets/js/lib/angular-cache.js"></script>
<script type="text/javascript" src="app/assets/js/lib/angular-route.js"></script>
<script type="text/javascript" src="app/assets/js/lib/angular-animate.js"></script>
<script type="text/javascript" src="app/assets/js/lib/angular-touch.js"></script>
<script type="text/javascript" src="app/assets/js/lib/angular-cookies.js"></script>
<script type="text/javascript" src="app/assets/js/lib/jquery-1.10.1.js"></script>
<script type="text/javascript" src="app/assets/js/lib/jqueryui.js"></script>
<script type="text/javascript" src="app/assets/js/lib/bootstrap.js"></script>
<script type="text/javascript" src="app/assets/js/lib/bootstrap-switch.js"></script>
<!-- endbuild -->
2.使用Grunt Task复制脚本
copy:{
scripts:{
files:[{
expand: true,
cwd:'<%= config.app %>',
dest: '<%= config.tmp %>', src: ['app/assets/js/lib/**/*.min.js']
}]
},
}