2

AngularJS を使用して、配列内の項目のサブセットを作成するにはどうすればよいですか?

例えば; 「done:true」アイテムのみを含む「todos」から新しい配列を作成します。

function fooController ($scope) {

$scope.todos = [
        {text:'foo'        , done:false}, 
        {text:'foobar'     , done:true},
        {text:'foofoo'     , done:false}, 
        {text:'foobar2'    , done:true}
 ]

}

http://docs.angularjs.org/api/ng.filter:フィルター

http://www.youtube.com/watch?v=WuiHuZq_cg4&list=PL173F1A311439C05D&context=C48ac877ADvjVQa1PpcFONnl4Q5x8hqvT6tRBTE-m0-Ym47jO3PEE%3D

10:45くらいに見る→終了

4

2 に答える 2

0

Ok、

データのみをチェックして変数を更新する

あなたのモデル:

$scope.todos = [
        {text:'foo'        , done:false}, 
        {text:'foobar'     , done:true},
        {text:'foofoo'     , done:false}, 
        {text:'foobar2'    , done:true}
 ]

あなただけがチェックしたい:

$scope.todoselect = $filter('filter')($scope.todos, {done:true});

モデルの変更時に変数を更新したいので、コントローラーでウォッチを使用します

$scope.$watch('todos', function(newval, oldval){
                        if (oldval != newval)
                        {   
                      $scope.todoselect = $filter('filter')($scope.todos, {done: true});
                            }
                            },true
                        );
  });

サンプル : http://plnkr.co/edit/PnABre?p=preview

于 2013-05-06T17:15:27.580 に答える