Angularjs 如何使用新数据源重新初始化剑道网格

Angularjs 如何使用新数据源重新初始化剑道网格,angularjs,kendo-ui,Angularjs,Kendo Ui,我在asp.NETMVC3中使用Angular和KendoUI 我正在慢慢地创建某种通用的网格来处理我将得到的各种数据响应 在前面的框架中,我们将在重新初始化之前使用$(“#mainGrid”).data(“kendoGrid”).destroy()。但是,在Angular controller中,我不知道如何使用更新的数据源(新模式和数据)销毁/重新创建网格 以下是我的通用网格函数: function initHierarchyGrid_Generic(reportType, data, r

我在asp.NETMVC3中使用Angular和KendoUI

我正在慢慢地创建某种通用的网格来处理我将得到的各种数据响应

在前面的框架中,我们将在重新初始化之前使用
$(“#mainGrid”).data(“kendoGrid”).destroy()
。但是,在Angular controller中,我不知道如何使用更新的数据源(新模式和数据)销毁/重新创建网格

以下是我的通用网格函数:

 function initHierarchyGrid_Generic(reportType, data, refresh) {            

        var myModel = gridHierarchyService.getDataSourceModel(reportType, data);
        var myColumns = gridHierarchyService.getColumnDefs(reportType, data);
        var myData = gridHierarchyService.getDataRows(reportType, data);

        var ds = new kendo.data.DataSource({
            schema: {
                model: myModel
            },
            pageSize: 5,
            data: myData
        });
        ds.read();

        vm.mainHierGridOptions = {
            dataSource: ds,
            pageable: true,
            detailInit: detailInit,  // detailInit() determines nested levels.                      
            columns: myColumns
        };           

        if (refresh) {     // NEW LOGIC TO REFRESH THE DATASOURCE (as per suggestion)
            var grid = $('#mainGrid').data("kendoGrid");
            grid.setDataSource(ds);
        }

        return vm.mainHierGridOptions;
    }
谢谢你的帮助

问候,, 鲍勃

更新: 现在我传入一个refresh参数,并使用grid.setDataSource(ds);触发网格更新。 它确实更新了网格,但是我的网格现在是空的。我怀疑这是一个与数据相关的问题

在这种情况下,如果我在html中使用k-bind=“vm.mainHierGridOptions”,如下所示,那么Chrome就会出现wierd$digest迭代错误:


重新初始化数据最好通过ds.data(yournewdata)调用完成。我也不确定如何更改模式。

grid.setDataSource()?@LarsHöppner-您的建议触发了网格更新,这正是我要找的。谢谢你的建议。现在我的网格当然有空数据,所以我现在处理的可能是一个与数据相关的问题。您应该得到这个问题的答案。您需要手动触发数据源的读取$(#mainGrid”).data(“kendoGrid”).dataSource.read()@JonathanBuchanan-我实际上认为上面的ds.read()就足够了。因此,我添加了您的dataSource.read(),但它没有什么不同(例如,grid显示了来自上一次网格渲染的奇怪数据对象引用,我将发布一个屏幕截图)