[英]passing an array from controller angular
I'm new to Angular. 我是Angular的新手。 I've got a function here where I want to choose a random name from inside the array to display.
我这里有一个函数,我想从数组内部选择一个随机名称来显示。
In my controller, I have set up an array called names
. 在控制器中,我建立了一个名为
names
的数组。 I then want to pass it into my $scope.message
function and have it called from the my html. 然后,我想将其传递到
$scope.message
函数中,并从我的html中调用它。
I keep getting an error: 我不断收到错误消息:
"Error: [$interpolate:interr] Can't interpolate:
{{message(names)}}
{{}}
my controller: 我的控制器:
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;
};
});
My html: 我的html:
<div class="container">
<div ng-controller="EventController">
{{message(names)}}
{{}}
</div>
</div>
Thank you. 谢谢。 I tried to changing
names
to $scope.names
but that didn't seem to work. 我试图将
names
更改为$scope.names
但这似乎没有用。
Your randomness logic seems wrong, a working example : 您的随机性逻辑似乎是错误的,一个有效的示例 :
function EventController($scope) {
$scope.names = ["David", "Tony", "Tim", "David", "Daniel", "Tom"];
var randomChoose = function(array){
return array[Math.floor(Math.random() * array.length)];
};
$scope.message = function(array){
var name = randomChoose(array);
return "Hello " + name;
};
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.