首页 > 解决方案 > 如何通过单击相同的 url 来重新初始化或渲染组件?

问题描述

当我重复单击菜单链接组件时,不会再次重新初始化,所以这些不起作用:

ngOnInit() {
console.log('Reinitialize');
}

constructor() {
   console.log('Reinitialize');
}

如何通过单击相同的 url 来重新初始化或渲染组件?

标签: angular

解决方案


ngOnInit()仅在组件第一次初始化时调用一次。但是,它仍然只是一个函数,因此您可以根据需要多次调用它。虽然值得一提的是,这不是推荐的模式

reInititialize()在您的代码中,您可以在单击菜单链接时调用 say 一个函数:

ngOnInit() {
console.log('Reinitialize');
}

reInititialize(){
this.ngOnInit()
}

尽管我建议您创建一个initialize()函数并在您的ngOnInint()实例中调用它,然后在 initialize()需要时直接调用该函数,而不是继续调用ngOnInit()

ngOnInit() {
    this.initialize()
    }

    initialize(){
    //Do some operation
    }

PS我可能不在基地,但我没有它说我需要在评论中提问的50个声望点。如果这不是您想要的,我会更新。


推荐阅读