2017-10-26 7 views
0

私のアプリでは次のコードを実行し、ng-initは$ watchをトリガーしないことがあります。何か案は?

HTML

<div ng-controller="MyCtrl"> 
    <p ng-init="stages = 'coco'">{{x}}</p> 
</div> 

コントローラ

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

    function MyCtrl($scope) { 

     $scope.$watch("stages", function() { 
      alert($scope.stages); 
     }); 
    } 

答えて

1

んが、それは、あなたのコードに応じて、あなたがどこでもng-appを追加していないしていないん。

DEMO

var myApp = angular.module('myApp',[]); 
 
myApp.controller('MyCtrl',function($scope){ 
 

 
     $scope.$watch("stages", function() { 
 
      alert($scope.stages); 
 
     }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="myApp" ng-controller="MyCtrl"> 
 
    <p ng-init="stages = 'coco'">{{x}}</p> 
 
</div>

+0

申し訳ありませんが、アプリケーションのコードの一部です。私はアプリログで、$ watchがトリガしないことがあることを見ました。それは可能ですか? – CocoTown

+0

これはできません。変数が変更されると常にトリガーされます – Sajeetharan

関連する問題