>> router", this.router) co-6ren">
gpt4 book ai didi

Angular 5 router.navigate 不起作用

转载 作者:太空狗 更新时间:2023-10-29 18:12:41 27 4
gpt4 key购买 nike

我正在尝试根据某些条件将用户重定向到另一个页面。这是我的示例登录组件:

  ngOnInit() {
console.log(">>> router", this.router)
console.log(">>> activatedRoute", this.activatedRoute)

if (this.activatedRoute.queryParams['value'].param === 'value') {
console.log(">>> redirecting")
this.router.navigate(['home']);
}
}

如果我在没有参数的情况下导航到登录组件,那么我会看到登录组件模板,这很好。

但是,当我使用名为 param 的参数和 value 的值导航到登录组件时,我想将用户重定向到主页。那是行不通的。

这是我的主页路由:

import { NgModule } from '@angular/core';

import { HomeComponent } from './home.component';
import { RouterModule, Routes } from '@angular/router';

const thisRoute: Routes = [
{
path: 'home',
component: HomeComponent
}
];

@NgModule({
imports: [
RouterModule.forRoot(thisRoute, {
useHash: true, initialNavigation: false
})
],
declarations: [
HomeComponent
]
})
export class HomeModule { }

我已经在github中创建了一个测试项目供您下载并在您的计算机上运行。只需下载此项目:https://github.com/wvary/route-test

运行 npm install

然后运行npm run start

导航到 http://localhost:8080/#/home

您应该会看到如下内容:

enter image description here

您可以通过点击三个链接来查看每个页面的内容。这个想法是当你点击中间的链接时出现在主页上。

谢谢

最佳答案

试试这个
this.router.navigate(['../home']);

关于Angular 5 router.navigate 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49701587/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com