Angularjs OrderBy在角度上不起作用
我是角度上的总noob,我试图排序一个数组,它不是一个对象,但过滤器不工作 景色 和控制器Angularjs OrderBy在角度上不起作用,angularjs,Angularjs,我是角度上的总noob,我试图排序一个数组,它不是一个对象,但过滤器不工作 景色 和控制器 var app = angular.module('miApp', []); app.controller('PruebaController',function($scope,notasModel){ this.notas = notasModel.getNotas(); }) 我试过很多方法,但是桌子没有顺序,顺序都是一样的试试这个: <body ng-app="miApp" ng-
var app = angular.module('miApp', []);
app.controller('PruebaController',function($scope,notasModel){
this.notas = notasModel.getNotas();
})
我试过很多方法,但是桌子没有顺序,顺序都是一样的试试这个:
<body ng-app="miApp" ng-controller="CochesController as c">
<div ng-controller="PruebaController as pc">
<table border="1">
<tr ng-repeat="nota in pc.notas | orderBy: 'nombre'" >
<td>{{nota.nombre}}</td><td> {{nota.edad}}</td>
</tr>
</table>
</div>
{{nota.nombre}{{nota.edad}}
angular指令知道您正在排序
nota
尝试如下过滤器:
<tr ng-repeat="nota in pc.notas | orderBy: 'nombre'" >
<td>{{nota.nombre}}</td><td> {{nota.edad}}</td>
</tr>
{{nota.nombre}{{nota.edad}}
重新阅读文档和示例。OrderBy获取要排序的对象的属性的名称。您正在传递$scope.nota.nombre的值,该值未定义。你想要的是pc.notas | orderBy:'nombre'这样它就可以工作了{{nota.nombre}}{nota.edad}我想这就是我所说的,我只是包括了整个应用程序。但是使用了ng controller=“PruebaController”>
而不是ng controller=“CochesController as c”
是的,这就是控制器as和传统控制器使用之间的区别。控制器实际上是首选的。
<body ng-app="miApp" ng-controller="CochesController as c">
<div ng-controller="PruebaController as pc">
<table border="1">
<tr ng-repeat="nota in pc.notas | orderBy: 'nombre'" >
<td>{{nota.nombre}}</td><td> {{nota.edad}}</td>
</tr>
</table>
</div>
<tr ng-repeat="nota in pc.notas | orderBy: 'nombre'" >
<td>{{nota.nombre}}</td><td> {{nota.edad}}</td>
</tr>