2016-09-25 53 views
0

在我的角JS應用程序中的以下回調函數中,我只想將值添加到數組地址[]中,該值在函數參數中具有值val。 這基本上是對返回值的功能提示基於字符串匹配的從我的JSON:想要過濾來自JSON的值並添加到數組

$scope.getAirports = function(val) { 
    return $http.get('https://raw.githubusercontent.com/vedvasa/airports/master/airports.json', { 
           params: { 
           address: val, 
           sensor: false 
           } 
          }).then(function(res){ 

           var addresses = []; 
           angular.forEach(res.data.records, function(item){ 
           addresses.push(item.code); 
           }); 
           return addresses; 

          }); 
         }; 
+0

API中有一些API正在參數val中,key與val對應的是什麼。理想情況下,這種過濾應該發生在API本身。 其他選項是在()中使用[filters](http://stackoverflow.com/a/17193427/452708) 將您的代碼放在plnkr上以便於參考https://plnkr.co/edit/GIApq3EbE0JvIT97BvG3 – Abhijeet

+0

可能[如何使用AngularJs過濾JSON-Data?](http://stackoverflow.com/questions/11923142/how-to-filter-json-data-with-angularjs) – Abhijeet

+0

@Abhijeet https:// github。 COM/vedvasa /行程/斑點/主/視圖/ index.ejs – jack

回答

0

使用filter()在你的陣列

fetch("https://raw.githubusercontent.com/vedvasa/airports/master/airports.json"). 
then(e => e.json()). 
then(e => Promise.resolve(e. 
    records. 
    filter(e => e.carriers == 1))). 
then(e => console.log(e.length)) 

顯示此日誌1655在差異3885