2017-02-12 35 views

回答

4

您可以使用snapshot field of the ActivatedRoute获取当前版本的参数。

但是默认情况下,如果您从路由导航到相同的路由,仅更改参数,路由器会重用相同的组件。因此,您需要一个Observable才能对来自该组件内部的参数值的更改做出反应。

比方说,您有一个要显示的练习列表。当你点击练习时,你会去/exercises/1。在显示练习的组件的模板中,您有一个到/exercises/2的“下一步”链接。点击该链接将使params Observable发出一个新值。但路由器不会创建ActivatedRoute的新实例,并且不会创建ExerciseComponent的新实例。 ExerciseComponent需要订阅可观察的参数,以便在事件发出时加载练习2的细节。

如果您没有这样的链接,那么快照就是您所需要的,并且它确实包含了作为常规对象的参数。

相关问题