angular - set/edit 无需导航即可路由查询(或参数)
angular - set/edit route queries(or params) without navigating
您好,我想使用路由来存储某些信息,例如查询(或参数)中的分页数据或过滤数据。例如我在
app/datagrid
我想给它添加 page=2 和 pageSize=10
app/datagrid?page=2&pageSize=10
有没有办法edit/set他们到当前路线而不触发路线change/update?
谢谢!
如果您将其添加到当前路线,则路线不会改变。如果仅更改参数,它不会重新加载组件。
你可以在这里看到一个例子:
这使用 .navigate
命令,但如果它导航到当前显示的同一组件,它实际上不会 "navigate"。
或者,您可以构建一个保留该数据的服务,而不是使用路由参数。我这里有一个例子:https://blogs.msmvps.com/deborahk/build-a-simple-angular-service-to-share-data/
服务基本上是这样的:
import { Injectable } from '@angular/core';
@Injectable()
export class DataService {
serviceData: string;
}
但是您将拥有 page
和 pageSize
。
而不是 serviceData
您好,我想使用路由来存储某些信息,例如查询(或参数)中的分页数据或过滤数据。例如我在
app/datagrid
我想给它添加 page=2 和 pageSize=10
app/datagrid?page=2&pageSize=10
有没有办法edit/set他们到当前路线而不触发路线change/update?
谢谢!
如果您将其添加到当前路线,则路线不会改变。如果仅更改参数,它不会重新加载组件。
你可以在这里看到一个例子:
这使用 .navigate
命令,但如果它导航到当前显示的同一组件,它实际上不会 "navigate"。
或者,您可以构建一个保留该数据的服务,而不是使用路由参数。我这里有一个例子:https://blogs.msmvps.com/deborahk/build-a-simple-angular-service-to-share-data/
服务基本上是这样的:
import { Injectable } from '@angular/core';
@Injectable()
export class DataService {
serviceData: string;
}
但是您将拥有 page
和 pageSize
。
serviceData