DateRangePicker не распознает дату углерода

Использование Vue.js (Vue-Tables https://www.npmjs.com/package/vue-tables) с помощью laravel. Данные отображаются успешно, но указатель диапазона дат (http://www.daterangepicker.com/) вообще не сортировка. Независимо от того, какой интервал я установил, записи не будут отображаться. Поле обрабатывается с помощью углерода для возврата в нужном формате.

public function getFootageDateAttribute($date)
{
    return Carbon::parse($date)->format('d-m-Y');
}

В js-файле у меня dateFormat: "DD-MM-YY", filterByColumn: true, dateColumns: ['footage_date'],. Когда я проверяю с помощью vue dev-tools, поле footage_date: "03-04-2016"

Если я жестко закодирую дату, как в примере (https://jsfiddle.net/matfish2/f5h8xwgn/) используя

// Предоставлено Томашем Нуркевичем (Элегантный способ генерировать массив случайных дат в пределах двух дат)

function randomDate(start, end) {
  return moment(start.getTime() + Math.random() * (end.getTime() - start.getTime()));
}

дата в этом формате footage_date: "1974-03-27T18:19:40.364Z", и это работает.

Вставьте полный js-файл http://pastebin.com/6hCe2eQL. Клиентская сторона http://pastebin.com/xTUcAK98


person Mike    schedule 05.04.2016    source источник


Ответы (1)


Footage_date должен был передаваться как экземпляр момента, а не как строка даты, поэтому изменение функции готовности сделало это.

 ready: function(){
        this.$http.get('/api/footage')
            .then(function(response){
                footages = response.data
                footages.forEach(footage => {
                    footage.footage_date = moment(footage.footage_date)
                })
                this.tableData = footages
            }.bind(this))
    }
person Mike    schedule 07.04.2016