Angular 涂底漆(5.2.4)树-罐和x27;t单击展开树节点

Angular 涂底漆(5.2.4)树-罐和x27;t单击展开树节点,angular,angular5,primeng,Angular,Angular5,Primeng,Background:我试图使用PrimeNG的树组件,但在单击展开节点时遇到以下错误: UITreeNode.html:6 ERROR TypeError: eventTarget.className.indexOf is not a function at Tree.onNodeClick (tree.js:270) at UITreeNode.onNodeClick (tree.js:48) at Object.eval [as handleEvent] (UITr

Background:我试图使用PrimeNG的树组件,但在单击展开节点时遇到以下错误:

UITreeNode.html:6 ERROR TypeError: eventTarget.className.indexOf is not a function
    at Tree.onNodeClick (tree.js:270)
    at UITreeNode.onNodeClick (tree.js:48)
    at Object.eval [as handleEvent] (UITreeNode.html:6)
    at handleEvent (core.js:13589)
    at callWithDebugContext (core.js:15098)
    at Object.debugHandleEvent [as handleEvent] (core.js:14685)
    at dispatchEvent (core.js:10004)
    at eval (core.js:10629)
    at HTMLDivElement.eval (platform-browser.js:2628)
    at ZoneDelegate.invokeTask (zone.js:425)
跟踪错误时,问题代码如下所示:

Tree.prototype.onNodeClick = function (event, node) {
        var eventTarget = event.target;
        if (eventTarget.className && eventTarget.className.indexOf('ui-tree-toggler') === 0) {
            return;
        }
进一步挖掘:我在我的树中添加了一个单击事件,以查看事件的外观(尽管这可能是完全错误的,因为这可能与实际错误不同),并发现当您单击一个节点时,返回的结果如下:

SVGAnimatedString {
    baseVal: "svg-inline--fa fa-caret-right fa-w-6 ui-tree-toggler fa-fw", 
    animVal: "svg-inline--fa fa-caret-right fa-w-6 ui-tree-toggler fa-fw"
}
其他可能相关的依赖项和代码

"@angular/animations": "^5.2.10",
"@angular/cdk": "^5.2.1",
"@angular/common": "^5.2.10",
"@angular/compiler": "^5.2.10",
"@angular/core": "^5.2.10",
"@angular/forms": "^5.2.10",
"@angular/http": "^5.2.10",
"@angular/material": "^5.2.1",
"@angular/platform-browser": "^5.2.10",
"@angular/platform-browser-dynamic": "^5.2.10",
"@angular/router": "^5.2.10",
"primeng": "^5.2.4"
<p-tree [value]="files" (click)="log($event)"></p-tree>
树代码

"@angular/animations": "^5.2.10",
"@angular/cdk": "^5.2.1",
"@angular/common": "^5.2.10",
"@angular/compiler": "^5.2.10",
"@angular/core": "^5.2.10",
"@angular/forms": "^5.2.10",
"@angular/http": "^5.2.10",
"@angular/material": "^5.2.1",
"@angular/platform-browser": "^5.2.10",
"@angular/platform-browser-dynamic": "^5.2.10",
"@angular/router": "^5.2.10",
"primeng": "^5.2.4"
<p-tree [value]="files" (click)="log($event)"></p-tree>
问题:我似乎无法在stackblitz或plnkr中复制它,所以可能有一些叛逆的代码影响到树

或者我的打底/角度的版本已经过时了,这在升级中得到了修复


感谢您的帮助

你能提供你的log()方法的代码吗?@Woworks编辑了一篇文章,在底部包括log()。这只是一个简单的console.log事件。你有没有像文档中那样尝试过(onNodeExpand)=“loadNode($event)”呢?我尝试过了——不幸的是,上面的
onNodeClick
事件首先触发,在我有机会从
onNodeExpand
捕获事件之前就出现了错误:(顺便说一句,我发现了和你一样的问题。)-