2014-09-01 80 views
0

我正在嘗試從我的控制器中的角度$資源請求中導出CSV項目Items.query() - $ resource請求返回一個Angular資源對象數組,有額外的功能特性,像這樣:

Resource {_id: "540432e0f2ef60b1284d9187", example: "Stuff", __proto__: Resource $delete: function (params, success.... 

所以在我的CSV我得到我想要的數據,但在此__proto__屬性額外凌亂列。分離出我需要的數據的最佳方式是什麼?我會使用一個$ promise.then()添加到查詢()和內部修改的對象是安全的CSV輸出? 或者我會添加一個函數到服務本身嗎?這是API服務:

angular.module('myApp', []).factory('Items', ['$resource', function($resource) { 
    return $resource('api/items/:id', {id: '@_id' }, { 
    update: { 
     method: 'PUT' 
    } 
    }); 
}]); 

所有的資源也有__v: 0的屬性,但這並不出現在CSV出口,有人可以解釋爲什麼這不出口的,但原資源功能?

謝謝!

+0

爲什麼不定義要導出到CSV的屬性列表?這是確保所有CSV條目具有相同信息的唯一方法。 – bmleite 2014-09-01 11:04:49

+0

嗨@bmleite,所以你的意思是爲每一個與我感興趣的屬性創建一個新的對象?像 'var objArr; (var i = 0; i 2014-09-01 11:41:31

回答

0

遵循@ bmleite的建議我剛剛創建了一個使用資源對象的數據挑選我想要的屬性的新數組。例如:

Label.query().$promise.then(function(data) { 
    var csvArray = []; 
    for(var i = 0; i<data.length; i++) { 
    csvArray[i] = { 
     _id: data[i]._id, 
     example: data[i].example, 
     ...... 
    }; 
    } 
});