如何以角度向返回的对象添加数据?

时间:2017-09-15 07:44:14

标签: javascript angularjs angularjs-scope

我要求用户选择一周范围,例如

  

1/2 / 2017 - 2017年1月8日(周一至周五,周六和周日将是   本周格式)

如果数据库中存在该周范围内的数据,例如从周一到周五,那么

我能够绑定上面的内容,但是,我需要在结尾显示另外两个日期(即数据库中的星期一 - 星期五5行,数据库中没有星期六和星期日)。

Date    Column1
1/2      1
1/3      2
1/4      3
1/5      4
1/6      5
1/7      0
1/8      0

我如何每周总共绑定7行,如果数据存在于数据库中,我想显示,如果没有,只显示不在数据库中的日期,而不显示0。

$scope.MyWeekData = [];

在html中,

<tr ng-repeat="week in MyWeekData" >
  <td>
    <label>
       {{week.Date | date:"MM/dd/yyyy" }} 
    </label>
  </td>
  <td>
    <label>
     <input name="column1" type="number" ng-model="week.Column1">
    </label>
    </td>

2 个答案:

答案 0 :(得分:1)

关于iterate-through-a-range-of-dates-in-nodejs中@Matt Johnson的回答你也可以这样做:

安装momentjs并按如下方式分配您的数据:

$scope.MyWeekData = [];
let dateA = '1/2/2017';
let dateB = '1/8/2017';
for (let m = moment(dateA); m.diff(dateB, 'days') <= 0; m.add(1, 'days')) {
  $scope.MyWeekData.push({
    Date: m.format('MM/DD/YYYY'),
    Column1: //your value from response or 0
  });
}

我希望这会有所帮助。

答案 1 :(得分:0)

我需要在保存数据的同时存储从开始到结束的所有日期,以便我可以避免这种情况。那将是正确的方法。

相关问题