1

将 Vue.js(Vue-Tables https://www.npmjs.com/package/vue-tables)与laravel一起使用。数据已成功显示,但 daterangepicker ( 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/)对日期进行硬编码

// 由 Tomasz Nurkiewicz 提供(在两个日期内生成随机日期数组的优雅方法

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的 Pastebin 。客户端http://pastebin.com/xTUcAK98

4

1 回答 1

0

素材日期应该作为时刻实例而不是日期字符串传递,因此,修改就绪函数就可以了

 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))
    }
于 2016-04-07T16:55:04.887 回答