Javascript Angularjs数组作为样式数组

Javascript Angularjs数组作为样式数组,javascript,html,angularjs,Javascript,Html,Angularjs,我对AngularJS中的对象数组有点小问题。我需要创建一个固定长度的数组,其中包含如下对象: var obj = { "background-color" : "FFFF" } 现在我可以用javascript轻松地实现这个结果,并且我已经在angularjs控制器中创建了一个数组 $scope.selected_colors = []; for(var i = 0; i < 20; i++){ $scope.selected_colors.pu

我对AngularJS中的对象数组有点小问题。我需要创建一个固定长度的数组,其中包含如下对象:

var obj = {
"background-color" : "FFFF"
}
现在我可以用javascript轻松地实现这个结果,并且我已经在angularjs控制器中创建了一个数组

$scope.selected_colors = [];
for(var i = 0; i < 20; i++){
$scope.selected_colors.push(getRandomColor());
}

如果我在ng风格的调用中使用它,我会看到背景。运行时生成的对象是否存在问题?我错过了使这个模型工作的东西?在angularjs中是否有更好的方法来实现此结果?

看起来您的
getRandomColor()
只是返回一个颜色字符串(例如:蓝色),这使得
选中的颜色[$index]
是一个颜色字符串,但
ng style
需要一个对象,因此您的代码无法工作。要解决此问题,只需将代码更改为:

...
$scope.selected_colors.push({"background-color": getRandomColor()});
...

找到了解决方案,但在声明十六进制代码前面缺少的#的颜色时出错,该十六进制代码在构建颜色代码字符串时丢失。如果将来有人需要提示来执行相同的操作,我将这个问题留待讨论


谢谢大家。

您能打印/记录所选的颜色数组吗?
$scope.background = {
"background-color": "blue"
}
...
$scope.selected_colors.push({"background-color": getRandomColor()});
...