代码之家  ›  专栏  ›  技术社区  ›  POV

如何通过单击同一个URL重新初始化或呈现组件?

  •  -2
  • POV  · 技术社区  · 6 年前

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

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

    如何通过单击同一个URL重新初始化或呈现组件?

    1 回复  |  直到 6 年前
        1
  •  1
  •   marshall legend    6 年前

    ngOnInit() 只在组件首次初始化时调用一次。但是,它仍然只是一个函数,所以您可以根据自己的需要随时调用它。尽管值得一提的是,这不是推荐的模式

    在你的代码里你可以打电话说 reInititialize() 每次单击菜单链接时都可以使用:

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

    尽管我建议你创建一个 initialize() 函数并在您的 ngOnInint() 然后调用 初始化() 如果需要而不是继续调用 恩戈尼尼特()

    ngOnInit() {
        this.initialize()
        }
    
        initialize(){
        //Do some operation
        }
    

    附笔。 我可能不太靠谱,但我没有50个信誉点,上面说我需要在评论中提问。如果这不是你要找的,我会更新的。