配列であるモデル値がディレクティブによって更新されたときに追跡する必要がありますが、$watch が失敗しているようです。問題を説明するためにフィドルを作成しました。
モデルが変わったときにアクションを実行できるように、時計をセットアップします。
$scope.$watch('model.title', function(newValue, oldValue) {
if ($scope.model) {
console.debug("watchedTitle=" + newValue);
$scope.watchedTitle = newValue ;
}});
モデルの newValue が整数の場合、$watch はデバッグ ログに示されているように一貫して起動します。
watchedTitle=1
watchedTitle=2
watchedTitle=3
watchedTitle=4
watchedTitle=5
アレイへの変更を監視するために 2 番目のウォッチをセットアップします。
$scope.$watch('model.titlearray', function(newValue, oldValue) {
newValue が配列の場合、$watch は最初の使用時にのみ起動します。
watchedTitlearray: 1
その後、私の2番目の時計は発火しません。
私が間違っていることは何か分かりますか?