相关疑难解决方法(0)

Angular - 使用自定义方法扩展$ resource子对象

在大多数情况下,<custom-resource>.query()方法的结果是一个数组,可以使用以下(工厂)代码通过某些方法(业务逻辑)轻松扩展:

var Data = $resource('http://..');
Data.prototype.foo = function() {return ...};
Run Code Online (Sandbox Code Playgroud)

这非常适合与ng-repeat/ng-class一起使用,如下所示:

<tr ng-repeat="item in responseData" ng-class="{warning: item.foo()}">..</tr>
Run Code Online (Sandbox Code Playgroud)

我的问题是每个列表响应都封装在一个对象中,除了实际列表之外,它还有一些元属性(排序信息等),所以返回的最终对象是这样的:

{ order_field: "name", items: [{..}, {..},{..}] }
Run Code Online (Sandbox Code Playgroud)

现在,我如何使用ng-repeat/ng-class进行与之前相同的操作?

<tr ng-repeat="item in responseData.items" ng-class="????">..</tr>
Run Code Online (Sandbox Code Playgroud)

之前的方法不起作用,因为定义了"foo"方法responseData而不是item对象

有没有办法直接扩展用于实例化列表中对象的基类?

谢谢!

javascript angularjs angularjs-resource

37
推荐指数
2
解决办法
2万
查看次数

标签 统计

angularjs ×1

angularjs-resource ×1

javascript ×1