Я новичок в Угловом. У меня есть функция здесь, где я хочу выбрать случайное имя изнутри массива для отображения.Передача массива от контроллера угловая
В моем контроллере я создал массив с именем names
. Затем я хочу передать его в мою функцию $scope.message
и вызвать ее из моего html.
Я получаю сообщение об ошибке:
"Error: [$interpolate:interr] Can't interpolate:
{{message(names)}}
{{}}
мой контроллер:
eventsApp.controller("EventController", function EventController($scope)
{
var names = ["David", "Tony", "Tim", "David", "Daniel", "Tom"];
var randomChoose = function(array){
return Math.floor(Math.random() * array.length-1);
};
$scope.message = function(array){
var name = array.indexOf(randomChoose(array));
return "Hello"+name;
};
});
Мой HTML:
<div class="container">
<div ng-controller="EventController">
{{message(names)}}
{{}}
</div>
</div>
Спасибо. Я попытался изменить names
на $scope.names
, но это, похоже, не сработало.
Я думаю, что вы обязательно должны иметь имена в области для этой работы – lostintranslation
Какова точка пустых фигурных скобок ('{{ }} ') в разметке? Кажется, это проблема. – GregL
отлично работает здесь с настройками ... включая $ scope.names ... и правильный поиск массива http://plnkr.co/edit/kfajKG3QtsMzDIOahMQW?p=preview. Если вы использовали консоль для проверки значений в контроллере (базовая отладка), то выяснили бы больше: – charlietfl