Javascript 将dataview与数据库同步

Javascript 将dataview与数据库同步,javascript,ajax,slickgrid,Javascript,Ajax,Slickgrid,我使用Slickgrid和Dataview编辑多达5000行的表,使用Laravel从MySQL数据库获取数据。我创建了一个AJAX保存函数,将所有数据保存到数据库中,但运行速度非常慢,并将网格冻结几秒钟: function TestSave() { var request; var token = $('meta[name="csrf-token"]').attr('content'); request = $.ajax({ url: "/est/p

我使用Slickgrid和Dataview编辑多达5000行的表,使用Laravel从MySQL数据库获取数据。我创建了一个AJAX保存函数,将所有数据保存到数据库中,但运行速度非常慢,并将网格冻结几秒钟:

function TestSave() {

    var request;
    var token = $('meta[name="csrf-token"]').attr('content');

    request = $.ajax({
        url: "/est/public/estimate/{{ $id }}",
        type: "PATCH",
        dataType: "json",
        params: {_token:token},
        async: true,
        data: { data: JSON.stringify(dataView.getItems()), _token:token
        }
    });

}
有没有办法保存数据而不冻结?我曾想过使用grid.onClick或onBeforeEditCell,并在每一行发生更改时单独保存每一行,但插入一行这样的函数会更改插入下面每一行的“顺序”值


保持数据视图和数据库同步的最佳方法是什么?

这是一个复杂的问题。
首先,ajax调用应该是异步的,因此它不应该阻塞5秒钟。
但是,如果要将所有5000行传递给服务器,那么JSON编码可能需要一段时间。最好只将更改的行传递给服务器。 然而,这本身比最初看起来要复杂得多

最好使用现有的框架为您处理数据。 微风是个不错的选择