无法获取Angular4中的查询参数
我正在使用Priming库开发Angular4应用程序。在我的一个组件中,我有以下代码:无法获取Angular4中的查询参数,angular,navigation,angular4-router,queryparam,Angular,Navigation,Angular4 Router,Queryparam,我正在使用Priming库开发Angular4应用程序。在我的一个组件中,我有以下代码: navigateUrl(company:any, cause?:boolean) { let navigationExtras = {queryParams : {cause: false}}; let navigateToUrl = '/home/policy/menu/' + company.policyId+ '/' + encodeURIComponent(company
navigateUrl(company:any, cause?:boolean) {
let navigationExtras = {queryParams : {cause: false}};
let navigateToUrl = '/home/policy/menu/' +
company.policyId+ '/' + encodeURIComponent(company.name) + '/' +
company.companyId + '/branches';
if(cause) {
let navigationExtras = {queryParams : {cause: true}};
}
this.router.navigateByUrl(navigateToUrl, navigationExtras);
}
我正在尝试在即将到来的菜单组件中获取这些查询参数,如:
this.route.queryParams.subscribe(params => {
console.log(params);
});
我也试过了
this.route.queryParams['cause'];
但是无论我尝试什么,我总是得到一个查询参数的空白映射。
有人能指出我哪里做错了。试试看
this.router.navigate(['/home/policy/menu/'],navigationExtras)
而不是this.router.navigateByUrl(navigateToUrl,navigationExtras)代码>
或者试试这个
this.router.navigateByUrl(navigateToUrl、navigationExtras.queryParams)代码>
但是您应该提供验证路由名称,因此需要检查/home/policy/menu/
是否为有效路由名称
为什么要导航?为什么不直接导航呢?