在ng repeat中使用带有orderBy的方法
Use method with orderBy in ng-repeat
如何将方法与orderBy一起使用?
我想用一个方法而不是一个属性对我的数组进行排序:
index.html
<tbody>
<tr ng-repeat="product in results.data | orderBy: product.getAllCounter()">
<!-- Product name -->
<td ng-bind="(product.product_offer[0].app_name === null) ? product.app.store_id : product.product_offer[0].app_name"></td>
<!-- Counter -->
<td class="text-right" ng-bind="product.getAllCounter()"></td>
<!-- Action -->
<td class="text-center">
<div class="btn-group">
<a ng-href="/#/product/{{ product.id }}" type="button" class="btn btn-default btn-sm">
See
</a>
</div>
</td>
</tr>
</tbody>
产品原型.getAllCounter
// Return result all counter in promo
Product.prototype.getAllCounter = function () {
var sum = 0;
angular.forEach(this.product_promo_linker, function (product_promo_linker) {
sum += product_promo_linker.promo.count;
});
return sum;
};
我试过
orderBy:product.getAllCounter()
和
订购人:product.getAllCounter
方法product.getAllCounter返回整数
已解决
我用过:
<tr ng-repeat="campaign in results.data | orderBy: getAllCounter:true">
在我的控制器js:
$scope.getCounter = function(product) {
return campaign.getAllCounter();
};
如果你想使用自定义排序功能,那么你需要提供一个:
ng-repeat="product in results.data | orderBy: product.getAllCounter"
注意:函数名称后没有()
:您希望使用函数引用,而不是函数调用的结果。
只需通过引用
angular.module('app', [])
.controller('ctrl', function($scope) {
$scope.products = [{
name: 'foo',
age: 2
}, {
name: 'bar',
age: 1
}, {
name: 'baz',
age: 3
}]
$scope.orderByAge = function(element) {
return element.age
}
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<ul ng-app='app' ng-controller='ctrl'>
<li ng-repeat="product in products | orderBy: orderByAge">
{{ product.name }} - {{ product.age }}
</li>
</ul>
相关文章:
- electronic BrowserWindow的最小高度和宽度在hide()show()方法之后不起作用
- 有没有任何方法可以将控制器从文件加载到ui路由器$stateProvider中
- 数组在递归方法中设置为null
- 打破承诺链的好方法是什么
- 在使用Polymer'加载所有json文件后执行方法;s的核心ajax
- 使用“;这个“;JavaScript原型方法中的关键字
- 序列化数据属性中对象的最可靠方法
- 使用Objective-C的JavaScript注入方法
- 有没有一种方法可以添加相同的项目val=“0”;4〃;到JavaScript中数组的每个对象
- 有没有一种方法可以防止img get请求使用css或js发生
- Javascript,有没有一种方法可以将数组写成没有逗号或空格的单个文本字符串
- toBoolean方法类似于toString
- 如何在单击复选框后调用控制器方法
- 是否有任何方法可以使用jQuery替换在数组中定义值的文本
- 递归使用 eval() 是检查程序执行的好方法吗?
- 如何在webView,Android中从@JavascriptInterface方法调用Javascript
- toLocaleDateString和toLocaleString方法不尊重机器时区
- 有条件更新d3.js力图中节点的最佳方法
- 在ng repeat中使用带有orderBy的方法
- Angularjs-将变量发送到纯JavaScript函数并返回orderBy过滤器的正确方法