0
私はsetTimeoutを(内側)(ダイジェスト$を使用)と不思議の例を発見しましたありがとう!
私はsetTimeoutを(内側)(ダイジェスト$を使用)と不思議の例を発見しましたありがとう!
これは、基本的なjavascript関数がAngularによって選択されないためです。
$timeout(function(){
// everything in here will be picked up by angular's digest cycle
});
$scope.$digest()
は手動のサイクルを消化角度トリガする方法ですが、私は考えることができない。このようなもののために、角度は、独自のサービス、すなわち$timeout
サービスを持っているので、私は、これは良い習慣です言うことはありませんあなたがこれを望むユースケース。
はさえを使用すると、ネイティブのJavaScriptで発生したコードを持っている場合、私はこのようにそれを行うだろう:。
setTimeout(function() {
$scope.$apply(function() {
// do stuff that will be picked up by angular
});
}
'$スコープ$(ダイジェスト)'間違いなく、そのユースケースを持っています。 '$ scope。$ apply()'とは対照的に、階層全体ではなく、現在のスコープについてのみダイジェストをトリガします。しかし、OPはそれを想定しているとは考えにくい。 – estus