【问题标题】:Better approach to set the data in kendo grid.在剑道网格中设置数据的更好方法。
【发布时间】:2018-12-04 16:24:39
【问题描述】:

加载剑道网格非常慢。

我有一个包含 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)

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

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

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

【问题讨论】:

    标签: kendo-ui kendo-grid


    【解决方案1】:

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

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

    【讨论】:

    • 感谢 Stefan 的建议。我将采用使用 data() 设置数据的方法,因为可观察数组似乎并不总是按预期工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-23
    • 2018-04-27
    相关资源
    最近更新 更多