0

ng-show (またはその他) などのディレクティブの式のチェックが重複するのはなぜですか? 簡単な jsfiddle の例http://jsfiddle.net/fA5YX/を作成しました。ブラウザ コンソールで参照してください。

<div ng-app ng-controller="ctrl" ng-show="test()">shown</div>
<script>
function ctrl($scope) {
    $scope.test = function() {
        console.log('check');
        return true;
    }
}
</script>

どうやって止めるの?チェックが1つだけ必要です。

4

2 に答える 2

2

おそらく、ng-show を使用して Controller 関数が 2 回呼び出されることにリンクされています- 引用するには:

ダイジェスト サイクルごとに、監視ごとに、AngularJS は関連する式を評価して変更があるかどうかを確認し、変更がある場合はリスナーを呼び出します ( の場合ng-show/ng-hide、リスナーは によって返される値に基づいて要素を表示または非表示にしますready())。

于 2013-10-13T18:09:59.667 に答える