Javascript $location.search()在Angular 7中等效
我正在将Angular JS迁移到Angular 7。我正在看这段代码,并试图在Angular 7中实现它 在服务中,注入了Javascript $location.search()在Angular 7中等效,javascript,angular,angular7,angular-components,Javascript,Angular,Angular7,Angular Components,我正在将Angular JS迁移到Angular 7。我正在看这段代码,并试图在Angular 7中实现它 在服务中,注入了$location,以下方法重置并设置查询参数 function resetAllOptions() { // Clears query params $location.search(''); } function setQueryParameters() { // Sets query parameters
$location
,以下方法重置并设置查询参数
function resetAllOptions() {
// Clears query params
$location.search('');
}
function setQueryParameters() {
// Sets query parameters
$location.search({
searchType: searchType,
searchField: searchField,
searchValue: searchValue,
searchValueTwo: searchValueTwo,
searchValueThree: searchValueThree
});
}
如何在Angular 7中实现这一点?参数在Angular v7中的实现方式完全不同,因为它们是路由的一部分。因此,没有一条线到另一条线与你所要完成的目标直接对应 在Angular v2+中,有三种不同类型的参数,因此第一步是定义所需的类型 下面是一篇详细介绍不同类型的文章: 假设您希望继续使用查询参数: 您可以在HTML中设置它们,如下所示:
<a [routerLink]="[product.id]"
[queryParams]="{filterBy: listFilter, showImage: showImage}">
{{ product.productName }}
</a>
this.router.navigate([`/search`],
{queryParams: {
searchType: searchType,
searchField: searchField, // ...
}});
请注意,您可以使用See强制导航