2017-05-10 6 views
0

私は一度のバインディングとして自分のデータを追加しています。私もデータのリストを更新しようとしています。AngularJS - 可視性をトリガーして1回のバインディングを更新しない

トリガーアップデートのために、私はtogglingng-show指令にしようとしています。しかし、私は期待された結果を得ていません。私はすべてCURDの操作をone time bindngとする必要があります - 私はここに何を保つか、正しい方法を示していますか?

var app = angular.module('plunker', []); 

app.controller('MainCtrl', function($scope,$timeout) { 

    $scope.visible = true; 
    $scope.name = 'World'; 

    $scope.data = [ 
     {"name":"name1","city":"city1"}, 
     {"name":"name2","city":"city2"}, 
     {"name":"name3","city":"city3"} 
     ] 

    $scope.addItem = function(item){ 

    $scope.visible = false; 

    var value = Math.ceil(Math.random()*10+1); 
    $scope.data.push({ 
     name:"name"+value, 
     city:"city"+value 
    }); 

    console.log($scope.data); 

    $timeout(function() { 
     $scope.visible = true; 
    }); 

    } 
}); 

Live Demo

答えて

2

使用NG-もしあなたNG-ショー:

は、ここに私のコードです。 ng-falseのときにDOM要素をデタッチすると、ng-showは要素を非表示にします。

+0

これはうまくいきますが、私はそれを避けるために小さなちらつきを見つけていますか? – 3gwebtrain

+0

いつでもng-ifがfalseの場合、html要素をデタッチし、trueの場合はそれらを戻します。 通常のng-repeatデータバインディングを使用できないのはなぜですか? –

+0

これは私の穴のデータからちょっとしたものを示しています。私は120列あり、それぞれ複数のCURDプロセスを持っています。私はパフォーマンス上の問題を発見しています。それが私が「一度」の拘束を行う理由です。 – 3gwebtrain

関連する問題