我不知道该怎么做:
我有一系列对象:
$scope.eventSources = [
{title: 'Equipe 1 vs equipe 2',start: new Date(y, m, 1),color: 'black'},
{title: 'Equipe 2 vs equipe 3',start: new Date(y, m, d - 5),end: new Date(y, m, d - 2),color: 'black'},
];
如何添加
className: 'evenement'
在每个对象里面?
我试过这个:
angular.forEach($scope.eventSources,function(value,index){
value.className = 'evenement';
});
但它不起作用,因为className尚不存在。
谢谢
答案 0 :(得分:0)
使用索引
访问数组对象angular.forEach($scope.eventSources,function(value,index){
$scope.eventSources[index]["className"] = "evenement";
});
或者您也可以将其添加到值
angular.forEach($scope.eventSources,function(value,index){
value.className = "evenement";
});
答案 1 :(得分:-1)
在数组中映射,然后为每个项目分配属性。
var newArray = $scope.eventSources.map(function(item) {
item.className: 'evenement';
return item;
});
console.log(newArray);
// result
[
{title: 'Equipe 1 vs equipe 2',start: new Date(y, m, 1),color: 'black',
className:'evenement'},
{title: 'Equipe 2 vs equipe 3',start: new Date(y, m, d - 5),end: new Date(y, m, d - 2),color: 'black', className:'evenement'},
];
答案 2 :(得分:-1)
您可以仅使用obj
中的angular.forEach
参数,因为您需要为每个对象(例如className
)分配一个新属性itm
作为{ {1}}
itm.className = 'evenement';

var app = angular.module("app", []);
app.controller("ctrl", function($scope) {
$scope.eventSources = [{
title: 'Equipe 1 vs equipe 2',
start: new Date(),
color: 'black'
},
{
title: 'Equipe 2 vs equipe 3',
start: new Date(),
end: new Date(),
color: 'black'
}
];
angular.forEach($scope.eventSources, function(itm) {
itm.className = 'evenement';
});
});