被困在Javascript中

时间:2017-11-28 08:13:33

标签: javascript angularjs user-interface scheduler

enter image description here

for(var j=0;j<$scope.all_date.length;j++) {
    var events = [{
        id: '',
        color: 'red',
        borderColor: '#d2e04f',
        titleDateFormat: '',
        content:'Holiday',
        startDate: new Date($scope.all_date[j].date)
    }];
}

在此代码中,我必须将假期设置为后端相关日期的内容。此代码仅显示最后一个存储日期作为假日。但我必须将后端的所有日期显示为假日直到循环结束。< / p>

Front end Back End

2 个答案:

答案 0 :(得分:3)

var events = [];
for(var j = 0; j< $scope.all_date.length; j++) {
   var event = {
      id: '',
      color: 'red',
      borderColor: '#d2e04f',
      titleDateFormat: '',
      content:'Holiday',
      startDate: new Date($scope.all_date[j].date)
   };

   events.push(event);
}

答案 1 :(得分:0)

您需要为每次迭代创建一个新对象。虽然目前它是为每个循环创建一个新对象,但它被当前值覆盖。

使用array#map方法返回一个新的对象数组

$scope.all_date.map(function(item){
   var events={
        id: '',
        color: 'red',
        borderColor: '#d2e04f',
        titleDateFormat: '',
        content:'Holiday',
        startDate: new Date($scope.all_date[j].date)
    }
       return events;

})