当我输入/#/ addOrder作为URL时,它应加载模板文件。是的,我没有收到一些错误,索引页面加载了两次。
t.html
{% load staticfiles %}
<!DOCTYPE html>
<html>
<head>
<title>asdad</title>
</head>
<body>
<div ng-app = "mainApp">
<a href="#/addOrder">add</a>
<div ng-view></div>
</div>
</body>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular-route.min.js"></script>
<script src="{% static 'js/script.js' %}" type="text/javascript"></script>
</html>
tem.html
<h1>tem is loaded!</h1>
script.js
var mainApp = angular.module("mainApp", ['ngRoute']);
mainApp.config(['$routeProvider', function($routeProvider) {
$routeProvider.
when('/addOrder', {
templateUrl: 'tem.html', controller: 'activeOrderController'
}).
when('/viewStudents', {
templateUrl: 'order/addOrders.html', controller: 'addOrderController'
}).
when('/viewStudents', {
templateUrl: 'order/endedOrders.html', controller: 'endedOrderController'
}).
otherwise({
redirectTo: '/t.html'
});
}]);
错误:ng:areq Bad Argument
参数'activeOrderController'不是aNaNunction,未定义 描述 AngularJS经常断言使用辅助函数会出现某些值并使其失效。如果断言失败,则抛出此错误。要解决此问题,请确保断言所期望的值已定义且真实。
答案 0 :(得分:0)
尝试删除ng-app和“=”之间的空格。 NG-应用= “mainApp”
另外,创建两个在路由配置中引用的控制器。
答案 1 :(得分:0)
您错误的重定向声明&amp;你有两条路由具有相同的语句/viewStudents
名称。
otherwise({
redirectTo: '/viewStudents'
});
此外,您还必须定义每条路线上提到的所有控制器
mainApp.controller('activeOrderController', function(){
//console.log('I am activeOrderController')
})
mainApp.controller('addOrderController', function(){
//console.log('I am addOrderController')
})
mainApp.controller('endedOrderController', function(){
//console.log('I am endedOrderController')
})