我使用grunt
和usemin
来连接和丑化以下内容:
<!-- build:js /assets/vendor.js -->
<script src="../public/bower_components/angular/angular.min.js"></script>
<script src="../public/bower_components/angular-route/angular-route.min.js"></script>
<!-- endbuild -->
所以这给了我一个vendor.js
。我有app.js
看起来像:
(function() {
'use strict';
var myApp;
myApp = angular('myApp', ['ngRoute']);
myApp.config([
"$routeProvider", "$translateProvider", "$locationProvider", function($routeProvider, $translateProvider, $locationProvider) {
$routeProvider.when("/login", {
templateUrl: "/templates/login.html"
}).otherwise({
redirectTo: "/login"
});
return $locationProvider.html5Mode(true);
}
]);
}).call(this);
出于某种原因,我在运行时说angular is not a function
。如果有人需要,我的uglified和连接的angular
脚本位于:https://gist.github.com/shamoons/b41855b7bd3acb94325d
答案 0 :(得分:1)
代码实际上应该是:
myApp = angular.module('myApp', ['ngRoute']);
您已尝试将角度调用为函数,这就是您收到错误的原因!
示例
我甚至根据您的grunt缩小文件(从链接下载)创建了一个角度页面。一切都运作良好。
<强> HTML 强>
<html ng-app="app">
<body ng-controller="test">
{{test}}
<script src="angular-gruntmin.js" type="text/javascript"></script>
<script src="test.js" type="text/javascript"></script>
</body>
</html>
<强>的Javascript 强>
var app = angular.module('app', []);
app.controller('test', function ($scope) {
$scope.test = "ABCDEFG";
});
你可以在这里看到这个:http://plnkr.co/edit/0fX0wwulbWBS8Plbmarl?p=preview