在Angular4中切换路由时阻止重新加载组件

时间:2018-03-14 06:55:06

标签: angular

我有一个类似的页面:

enter image description here

有两个标签:A和B,单击A时,插座将显示组件A,单击B时显示组件B.

现在单击标签B并显示组件B,然后单击标签A,然后单击B,该组件将通过ngOnInit引发重新加载。 问题是:

如何在A和B之间切换时防止组件B重新加载,我只想初始化组件B一次。

2 个答案:

答案 0 :(得分:2)

如果您不想在更改路线时重新加载组件,为什么不简单地将组件放在页面中并相应地隐藏/显示它们?请查看我创建的示例:

https://stackblitz.com/edit/angular-c2teek

答案 1 :(得分:0)

我使用angular service来维护组件的所有数据,并在组件的构造函数中调用相关函数,将这些值分配给组件的局部变量/对象。

因此,在每个开关上,组件的构造函数都将被调用,并且它将从服务中获取属性。

如果不是ngOnInit(),您也可以在constructor中执行相同的调用。

相关问题