Angular2路由,重页面,模拟导航

时间:2016-03-27 15:39:02

标签: angular angular2-routing

我需要在路由方面提供一些帮助。大多数工作正常,包括浏览器中的后退和前进按钮,只要我在不同的路线之间移动。但我有一个重量级组件(youtube播放器)(路由),我只想更改/route/:id上的内容,并避免重新初始化组件。所以我使用Location.go(:id)来修复网址。

但现在浏览器中的后退和前进按钮无法正常工作。我以为我可以使用Location.subscribe来挂钩浏览器事件,更改内容或导航并继续前进。但是......后退和前进按钮没有表现。如果我返回(到location.go())网址,则没有前锋。我不能再回去两次了。

我希望有人可以在这里给我一个策略......我要进入圈子。 好像Location.go(:id)只是没有照顾生意。

1 个答案:

答案 0 :(得分:1)

只需在重量级组件上实现CanReuse并返回true,然后保留组件实例,并在路由回来时重新添加。