首页 新闻 会员 周边 捐助

升级到 angular 19 与 ng-zorro-antd 19 后 nz-tree-view 出现问题

0
悬赏园豆:30 [已解决问题] 解决于 2025-05-20 22:49

园子的博客后台从 angular 15 升级到 angular 19 后,用于显示多级分类的 nz-tree-view 出现了两个问题:

1)点击分类名称前面的小图标可以展开,直接点击分类名称展开后立马被折起

2)点击二级分类名称后,tree view 会被折起,只显示一级分类

问题补充:

点击分类名称后,url 会加上 cateId=2264939 这样的查询参数

dudu的主页 dudu | 高人七级 | 园豆:24700
提问于:2025-05-20 20:33
< >
分享
最佳答案
0

终于定位到问题的原因了,与 nz-tree-view 无关,是下面的 directive 造成了 nz-tree-view 被重新加载

@Directive({
    selector: '[cnbLayoutSidebar]'
})
export class LayoutSidebarDirective implements OnInit {

    constructor(
        router: Router,
        private _sideBarSvc: SideBarService,
        private sideBar: TemplateRef<any>) {
        router.events
            .pipe(
                filter(ev => ev instanceof NavigationEnd),
                debounceTime(100),
                takeUntilDestroyed()
            )
            .subscribe(() => {
                this.updateSidebar();
            });
    }

    ngOnInit() {
        this.updateSidebar();
    }

    updateSidebar() {
        if (this.sideBar) {
            this._sideBarSvc.$sideBar.next(this.sideBar);
        }
    }
}
dudu | 高人七级 |园豆:24700 | 2025-05-20 22:33

采用的解决方法是把 NavigationEnd 改为 NavigationError

dudu | 园豆:24700 (高人七级) | 2025-05-20 22:40
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册