Я пытаюсь понять, как $ watch работает на примере, но его не работает. В этом примере я просматриваю массив, называемый фаворитом, который находится в пределах $ scope. Если изменяется массив избранных, я ожидаю записать новое значение в консоли. Не уверен, что это правильный способ использования $ watch.
Код контроллера
var mods = angular.module("listApp",[])
mods.controller("prodCtlr", function($scope){
$scope.favorites = ["a", "b", "c", "d"]
$scope.delete = function(index){
$scope.favorites.splice(index,1)
}
$scope.$watch(function(){
return $scope.favorites;
}, function(newVal, oldVal){
console.log(newVal);
})
}
);
HTML
<table class="table table-striped">
<tr ng-repeat="fav in favorites">
<td>{{fav}}</td><td><input type="button" class="btn btn-primary" value="Delete!" ng-click="delete($index)" ng-model="fav"></input></td>
</tr>
</table>
Блестящий, что работает для меня! Благодарю. – tintin