应用程序代码如下:
var myApp = angular.module('myApp', ['ngRoute']);
myApp.config(['$routeProvider', function($routeProvider){
$routeProvider.
when('/login', {
templateUrl: 'views/login.html',
controller: 'RegistrationController'
}).
when('/register', {
templateUrl: 'views/register.html',
controller: 'RegistrationController'
}).
when('/succes', {
templateUrl: 'views/success.html',
controller: 'SuccessController'
}).
othervise({
redirectTo: '/login'
});
}]);
我将运行它会抛出错误:
Uncaught Error: [$injector:modulerr]
at angular.js:88
at angular.js:4957
at p (angular.js:410)
at g (angular.js:4917)
at gb (angular.js:4839)
at c (angular.js:1949)
at Uc (angular.js:1970)
at xe (angular.js:1855)
at angular.js:33826
at HTMLDocument.b (angular.js:3468)
但我已加载angular-route
<script src="js/lib/angularjs/angular.min.js"></script>
<script src="js/lib/angularjs/angular-route.min.js"></script>
<script src="js/app.js"></script>
是否有任何线索表明没有加载ngRoute?
答案 0 :(得分:2)
我可以看到othervise而不是其他
答案 1 :(得分:1)
问题在这里,您应该使用否则而不是 othervise
。由于配置不正确,它会尝试加载模块,因此也会失败。
myApp.config(['$routeProvider', function($routeProvider){
$routeProvider.
when('/login', {
templateUrl: 'views/login.html',
controller: 'RegistrationController'
}).
when('/register', {
templateUrl: 'views/register.html',
controller: 'RegistrationController'
}).
when('/succes', {
templateUrl: 'views/success.html',
controller: 'SuccessController'
}).
otherwise({
redirectTo: '/login'
});
}]);