2016-09-21 102 views
0

下面是我們使用的是$watchCollection

$scope.$watchCollection(TwitterDashboardService.getSelectedList, updateList); 

由於FAS我所知$watchCollection觀察家如數組等

但是在這種情況下TwitterDashboardService.getSelectedList變化的集合是一個函數的代碼。它的定義如下 -

this.getSelectedList = function() { 
     return data.items.filter(function(item) { 
      return !!item.selected; 
     }); 
    }; 

我無法弄清楚當處理器updateList會叫什麼名字?

請幫忙。我對角度很陌生。

回答

0

$ watchCollection也可用於監視返回數組或對象實例的函數,並在任何這些值發生更改時觸發。

如果你只想看一個數組的子集,它非常方便。只需設置一個函數,只返回您想要觀看的值。

在您的特定場景中,它將返回屬性'selected'設置爲true的data.items列表。例如,如果您的項目列表是:

[{name:「item1」,selected:true},{name:「item2」,selected:false},{name:「item3」,selected:false} ,{name:「item4」,selected:true}]

然後,它只會觀察項目1和2.如果對這些項目進行了任何更改,則會觸發它。

+0

感謝您的優秀解釋。 – RajSharma

相關問題