Angular:详细视图返回带分页的列表

时间:2017-12-15 18:55:34

标签: angular angular-router

我有一个使用版本4的角度应用程序。

它有一个带有mat-table和分页mat-paginator的组件。

每一行都有路由器导航到详细信息。

问题:

当用户更改为第2页,然后导航到详细信息然后返回时,该组件将显示第1页的信息,而不是第2页。

应用程序如何返回第2页?

谢谢!

1 个答案:

答案 0 :(得分:0)

当用户离开组件时,该组件及其模板将被销毁。 Angular会记住关于组件的 nothing 。因此,当用户向后导航时,组件会将其自身初始化,就像之前从未显示过一样。

如果您需要一个组件来记住它的设置(例如它所在的页面),您需要在某处设置它。您可以构建一个包含值的服务。然后,组件可以设置用户所在的页面。当组件再次初始化时,它可以从服务中读取其最后一个状态。

我在这里有一个服务示例:https://github.com/DeborahK/MovieHunter-routing/blob/master/src/app/movies/movie-parameter.service.ts

在此示例中,服务会记住上次输入的过滤条件。但你可以做类似的事情来记住它的最后一页。

或者,您可以使用查询参数传递路由的状态信息。然后在用户导航回来时将该状态信息传递给detail组件并返回到表组件。

第一个选项(使用服务)可能是更好的选择。