Slickgrid-如何更新数据视图中的数据

Slickgrid - How to update data in the dataview?

本文关键字:数据 视图 更新 何更新 Slickgrid-      更新时间:2023-09-26

我有一个实例,在这个实例中,我需要基本上清除dataview中的所有数据,并为dataview提供一组新的数据。

以下是我目前拥有的

GridView.beginUpdate();
GridView.setItems(sortedData);
GridView.endUpdate();
GridView.refresh();

我尝试过这些功能和许多其他功能

grid.invalidate();
grid.render();
grid.invalidateAllRows();

疯狂的是,当我启动dataview(gridview)时,它以计数17开始。

SortedData的计数为91,在setItems之后的计数为84。我不知道这是怎么发生的。我已经阅读了关于删除和添加这个数据视图主题的每一篇文章和stackoverflow条目,并尝试了所有这些。

完全困惑,因为我已经试图弄清楚这一点有一段时间了,希望有人以前遇到过这种情况。目前,我认为这可能是由于我订阅了一些东西。

@Kzahel我实际上有一个这样的订阅集。:

dataView.onRowCountChanged.subscribe(function (e, args) {
            grid.updateRowCount();
            grid.render();
        });

以上内容实际上是在处理我的行数更新。

尝试grid.updateRowCount()我在slickgrid和动态内容方面也有问题。但调用该函数后,大多数问题都消失了。请参阅:https://github.com/kzahel/jstorrent/blob/master/examples/grid.js#L172

好的,这是我的解决方案

GridView.beginUpdate();
GridView.setItems(sortedData);
GridData = sortedData;
GridView.endUpdate();
GridView.refresh();

我在其他领域使用GridData的函数导致了大量问题。