无论如何设置transformResponse
a 的初始化后$resource
?
我基本上有一个扩展的$resource
,但我想附加一个transformResponse
扩展版本,而不是原始版本。
angular.module("services").factory('MyObject', function($resource) {
var MyObject = $resource('/my/object.json');
MyObject.prototype.someBusinessLogic = function() {};
return MyObject;
});
angular.module("services").factory('MyExtendedObject', function($resource, MyObject) {
MyObject.prototype.someExtendedBusinessLogic = function() {};
return MyObject;
});
因此,在该示例中,我想将 设置transformResponse
为这样的内容(仅在 中MyExtendedObject
):
$resource('/my/object.json', {}, {
query: {
method: 'GET',
isArray: true,
transformResponse: function(data) {
var objects = angular.fromJson(data);
for (var i = 0; i < objects.length; i++) {
objects[i] = new MyExtendedObject(objects[i]);
objects[i].hash = JSON.stringify(objects[i]);
}
return objects;
}
}
});
这样做的目的是在批量保存之前检查是否有任何对象已更改。
如果我偏离标准,你能建议一个更好的方法来实现这一目标吗?