1. // router.selectors.ts
    2. import { createFeatureSelector } from "@ngrx/store"
    3. import { AppState } from ".."
    4. import { RouterReducerState, getSelectors } from "@ngrx/router-store"
    5. const selectRouter = createFeatureSelector<AppState, RouterReducerState>(
    6. "router"
    7. )
    8. export const {
    9. // 获取和当前路由相关的信息 (路由参数、路由配置等)
    10. selectCurrentRoute,
    11. // 获取地址栏中 # 号后面的内容
    12. selectFragment,
    13. // 获取路由查询参数
    14. selectQueryParams,
    15. // 获取具体的某一个查询参数 selectQueryParam('name')
    16. selectQueryParam,
    17. // 获取动态路由参数
    18. selectRouteParams,
    19. // 获取某一个具体的动态路由参数 selectRouteParam('name')
    20. selectRouteParam,
    21. // 获取路由自定义数据
    22. selectRouteData,
    23. // 获取路由的实际访问地址
    24. selectUrl
    25. } = getSelectors(selectRouter)
    1. // home.component.ts
    2. import { select, Store } from "@ngrx/store"
    3. import { AppState } from "src/app/store"
    4. import { selectQueryParams } from "src/app/store/selectors/router.selectors"
    5. export class AboutComponent {
    6. constructor(private store: Store<AppState>) {
    7. this.store.pipe(select(selectQueryParams)).subscribe(console.log)
    8. }
    9. }