在剑道网格中设置数据的更好方法。

时间:2018-12-04 16:24:40

标签: kendo-ui kendo-grid

加载剑道网格非常慢。

我有一个包含500-1000条记录和40个不同列的网格。 网格加载缓慢。加载网格需要几秒钟(10-15)。 假设数据源是可观察的,并且是这样指定的。

kendoDataSource = new kendo.data.Datasource({
    data: observableArray
})

什么是更新记录并将其显示在UI上的最佳方法? 我应该使用吗?

observableArray.push.apply(observableArray, newData)
or
grid.kendoDataSource.data(observableArray)
or
define a newDataSource with newData and set it again
kendo.setDataSource(newDataSource)

最后,我如何知道网格是否已完全加载?我有一个忙碌指示器,它在网格的中心旋转,我想在加载网格后隐藏忙碌指示器。 我目前要做的是

observableArray.push.apply(observableArray, newData)
//hide the busy indicator.

由于网格仍在后台加载,因此在隐藏忙碌指示器后,网格会暂时空白或显示先前的数据一段时间。 用户认为网格加载了空白屏幕。几秒钟后,所有记录都出现在屏幕上。

1 个答案:

答案 0 :(得分:1)

最好的方法是仅更改数据的数据方法。这将立即替换整个数据,仅导致一次重新渲染。

指示器可以隐藏在dataBound事件中,因为这表明已渲染网格。