如何根据angularjs中的入住和退房日期分割日期?

如何根据angularjs中的入住和退房日期分割日期?,angularjs,date,Angularjs,Date,我有一个酒店系统需要分割日期(停留时间),开始日期(入住)和结束日期(退房)由用户在datepicker中选择。像这样: 首先,用ng repeat准备您的表格 <table ng-init="loadStays()" ng-if="stays"> <thead> <tr> <th>Date</th> <th>Amount</th> </tr> <

我有一个酒店系统需要分割日期(停留时间),开始日期(入住)和结束日期(退房)由用户在datepicker中选择。像这样:


首先,用ng repeat准备您的表格

<table ng-init="loadStays()" ng-if="stays">
  <thead>
    <tr>
      <th>Date</th>
      <th>Amount</th>
    </tr>
  </thead>
  <tbody>
    <tr ng-repeat="stay in stays | between:lodging.checkIn:lodging.checkOut">
      <td>{{ stay.date | date : 'mm-dd-yyyy' }}</td>
      <td>{{ stay.amount }}</td>
    </tr>
  </tbody>
</table>

在第一个日期开始循环,并递增一天,直到到达结束日期。你试过什么?像moment.js这样的库对这样的事情很有帮助,但使用javascript Date也不难object@linyuanxie-你能给我看一下angularjs的签入签出日期选择器代码吗?这里我需要相同的功能
// For parse a date in format: 'mm-dd-yyyy'
// If you have to parse the date from your item (maybe datetime ?)
// Use the built-in date filter
// like date = $filter('date')(item.date, 'mm-dd-yyyy')
parseDate = function(input) {
    var parts = input.split('-');
    return new Date(parts[1]-1, parts[2], parts[0]);
};

// Create the filter assuming app is your module.
app.filter('between', function() {
  return function(items, from, to) {
      filtered = [];
      var dateFrom = parseDate(from);
      var dateTo = parseDate(to);
      if (from == '' && to == '')
          return items;
      filtered = items.filter(function(item) {
        if (from !== '' && to == '') {
          return item.date >= dateFrom;
        } else if (from == '' && to !== '') {
            return item.date <= dateFrom;
        } else if (from !== '' && to !== '') {
            return item.date >= dateFrom && item.date <= dateTo
        }
      });

      return filtered;
  };
});
// Retrieve stays from yourdomain/stays
$scope.loadStays = function() {
    $http.get('stays').then(function(response) {
        $scope.stays = response.data;
    }, function(response) {
        console.log(response);
    });
};