Tôi nhận được một hành vi kỳ lạ với $ http của AngularJS và không thực sự hiểu cách transformResponse hoạt động (các tài liệu có chút sáng trên cái này).
WebAssets.get = function() {
return $http.get('/api/webassets/list', {
transformResponse: [function (data, headersGetter) {
// not sure what to do here?!
return data;
}].concat($http.defaults.transformResponse) // presume this isn't needed, added for clarity
}).then(function (response) {
return new WebAssets(response.data);
});
};
Các api trả về một mảng các đối tượng:
[{"webasset_name": "...", "application_id": "...", "etc": "..."}, ... ]
Nhưng khi transformResponse đã làm nó kinh doanh ác dữ liệu đã chuyển đổi thành một đối tượng được lập chỉ mục:
{"0":{"webasset_name":"...","application_id":"...", "etc": "..."}, "1":....}
tôi muốn giữ cấu trúc dữ liệu gốc (một mảng các đối tượng).
Bạn có thể muốn có một cái nhìn ở đây: http://stackoverflow.com/questions/17134401/angular-extending-resource-subobject-with-custom-methods – AlwaysALearner
Họ đang sử dụng tài nguyên $, tôi đang sử dụng $ http –