查看而不是渲染.控制器无数据
View not rendering. No data from controller
这是我开始学习AngularJS
的第二天。我的观点没有加载后,我添加了一些路线,我不知道为什么。这些是我的密码。
index . html
<!doctype html>
<html ng-app="myApp">
<head>
<meta content="text/html;charset=utf-8" http-equiv="Content-Type">
<meta content="utf-8" http-equiv="encoding">
<script src="https://code.angularjs.org/1.4.5/angular.js"></script>
<script src="angular-route.js"></script>
<script src="app/controllers/app.js"></script>
<script src="app/controllers/customersController.js"></script>
</head>
<body>
<div ng-view></div>
</body>
</html>
app.js
angular.module('myApp', ['ngRoute'])
.config(function ($routeProvider) {
'use strict';
$routeProvider
.when('/', {
controller: 'CustomersController',
templateUrl: 'app/views/customers.html'
})
.otherwise( { redirectTo: '/' });
});
customers.html
<h3>Customers</h3>
Filter: <input type="text" ng-model="customerFilter.name" />
<br/><br/>
<table>
<tr>
<th ng-click="doSort('name')">Name</th>
<th ng-click="doSort('city')">City</th>
<th ng-click="doSort('orderTotal')">Order Total</th>
<th ng-click="doSort('joined')">Joined</th>
</tr>
<tr ng-repeat="cust in filtered = (customers | filter:customerFilter | orderBy:sortBy:reverse)">
<td>{{ cust.name | uppercase }}</td>
<td>{{ cust.city }}</td>
<td>{{ cust.orderTotal | currency:'PLN' }}</td>
<td>{{ cust.joined | date}}</td>
</tr>
</table>
<span> Total customers: {{ filtered.length }} </span>
customersController.js
angular.module('myApp', ['ngRoute'])
.controller('CustomersController', function ($scope) {
'use strict';
$scope.sortBy = 'name';
$scope.reverse = false;
$scope.customers = [
{
joined: '2005-09-07',
name: 'Mayweather',
city: 'Brooklyn',
orderTotal: '43.1299'
},
{
joined: '2005-09-07',
name: 'Jason',
city: 'Cleveland',
orderTotal: '89.8933'
},
{
joined: '1999-08-27',
name: 'Jade',
city: 'Wroclaw',
orderTotal: '77.0092'
},
{
joined: '2015-09-01',
name: 'David',
city: 'Accra',
orderTotal: '13.8465'
},
{
joined: '2001-01-18',
name: 'Doyet',
city: 'Paris',
orderTotal: '23.9930'
}];
$scope.doSort = function (propName) {
$scope.sortBy = propName;
$scope.reverse = !$scope.reverse;
};
});
这是我的树形结构:
.
├── angular-route.js
├── angulars.js
├── app
│ ├── controllers
│ │ ├── app.js
│ │ └── customersController.js
│ └── views
│ └── customers.html
├── index.html
└── zextra
├── helloworld.html
└── ngrepeat.html
4 directories, 8 files
(zextra
文件夹无关)这是我在控制台得到的错误:
empty. nothing!
任何想法为什么我没有看到任何东西在浏览器中,但没有错误?
编辑:在Pankaj Parker的帮助下修复了主要错误后编辑的问题
angular-route.js
应该在app.js
之前加载,因为您想从angular-route.js
访问ngRoute
模块。目前它是不可用的,这就是为什么上面的代码在抛出[$injector:modulerr]
错误。
<script src="https://code.angularjs.org/1.4.5/angular.js"></script>
<script src="angular-route.js"></script>
<script src="app/controllers/app.js"></script>
<script src="app/controllers/customersController.js"></script>
确保
angular.js
&angular-route.js
应该有相同的版本,就像1.4.5
版本一样。
customersController.js
不应该再创建一个模块&你应该使用myApp
angular.module('myApp', ['ngRoute'])
angular.module('myApp')
<<p> 强大的文本/strong> 可能是拼写错误?
<script> src="angular-route.js"</script>
应该是:
<script src="angular-route.js"></script>
:)
ngRoute不可用。ngRoute由angular-route.js提供。
您的脚本语句:
<script> src="angular-route.js"</script>
没有指定src作为属性,而是作为javascript执行。
正确的格式应该是:
<script src="angular-route.js"></script>
1.4中有一个新的语法用于在其他地方使用过滤集合
item in items | filter : x | orderBy : order | limitTo : limit as results
相关文章:
- 在控制器和数据对象之间同步数据
- 使用Ajax请求rails控制器数据
- 如何将控制器数据加载到javascript数组中
- 如何在 angular js 中访问子控制器内的父控制器数据
- 按天在视图中应用控制器数据
- 跳跃运动控制器数据的清理
- AngularJS-通过服务从指令更新控制器数据(this.model语法)
- AngularJS通过服务自动更新控制器数据
- AJAX中的AngularJS控制器数据并不总是有效的
- 自定义指令控制器数据与工厂数据同步
- 来自路由提供程序的访问控制器数据
- Angularjs的服务和控制器数据不同步
- Ui-sref阻止访问控制器数据或视图
- 控制器数据没有传递给指令
- Angular ui-router多个嵌套和控制器数据
- 停止搜索解析控制器数据
- 使用AngularJS指令修改控制器数据
- 如何设置第一个控制器数据另一个控制器
- 控制器数据以角度设置另一页
- 如何在viewjavascript中访问playframework's控制器数据