单击选定的剑道树项目时,“无法将undefined或null转换为对象”

时间:2017-06-13 11:45:20

标签: angularjs kendo-ui

我在剑道树视图中使用了Kendo-angular指令。我使用以下方法形成数据源并查看如下。如果使用Jquery样式而不是Angular指令,我不会收到任何错误。

designer.cs

当我们点击树上的任何项目时,树会加载精细和更改事件。但是,当我们再次单击所选项时,更改事件不会触发,它会触发读取的错误。

var dataSource = new kendo.data.HierarchicalDataSource()
$scope.templateData = dataSource ;

<div kendo-tree-view="tree" k-data-source="templateData" k-on-change="onTemplateSelection(dataItem)"></div>

$("#treeview").kendoTreeView({
                    spriteCssClass: "sprite",
                    dataSource: dataSource,
                    dataTextField:  [ "AppName", "Name" ],
                    select: onSelect
                });

2 个答案:

答案 0 :(得分:0)

在没有所有代码的情况下很难找到错误,但基本上您获得的异常非常简单。在代码中的某个位置,您可能有一个看起来像这样的块:

if (object !== "null") { // The null is a string and not actually null
    ...
    Object.keys(object) ...
    ...
}

在代码中搜索&#39; null&#39;或&#34; null&#34;。如果你不能这样找到它,看看你是否也拼错了它。

答案 1 :(得分:0)

我发现了错误。一旦我点击树上的某个项目,我就会从项目中删除该类,k-“状态选择”。下次单击同一项时,它似乎使用相同的类(“k-state-selected”)和data-uid来查找所选项目。因为它不存在于该项目上,它曾用于提供上述错误。