Я ударил головой по поводу проблемы с угловым значением JS $. У меня есть массив, который я обновляю в функции контроллера. Согласно моим журналам консоли, значения внутри него действительно изменены. Однако представление не обновляется. Вот фрагменты.
//array initialisation
$scope.fieldSuggestions = []
//modifying function
$scope.changeCurrentInput = function(fieldName, eye) {
for(var field in $scope.test){
console.log($scope.test[field].name)
if($scope.test[field].name === fieldName){
console.log($scope.test[field].values)
console.log("be4 update")
console.log($scope.fieldSuggestions)
$scope.fieldSuggestions = $scope.test[field].values;
console.log("after update")
console.log($scope.fieldSuggestions)
}
}
};
//view
<div ng-repeat="choice in fieldSuggestions">
<button class="button button-positive">{{choice}}</button>
</div>
ПОДРОБНЕЕ ...
Я думаю, что это может быть уместным. У меня есть родительское представление и несколько дочерних представлений. Каждый из этих маршрутов использует один и тот же контроллер. i.e: контроллер свойств в routes.js одинаковый для всех. Кнопка, вызывающая функцию изменения, находится в дочерних представлениях, но ng-repeat, который не обновляется, находится в родительском представлении.
Что произойдет, если вы нажмете или соединитесь в списке? Обновляется ли представление? – Patrick
@Patrick no view не обновляется нажатием. – tarball111
Вы меняете значение в цикле дайджеста? Как и когда вы вызываете функцию? – Patrick