角度: 手动重定向到路线

我最近才开始使用 angular.js1,而不是 angular.js1。

I have followed the heroes tutorial to learn about the fundamentals of angular 4 and I am currently using angular's own "RouterModule" from the "@angular/router" package.

为了实现我的应用程序的一些授权,我想知道如何手动重定向到另一条路线,我似乎找不到任何有用的信息,这在互联网上。

186966 次浏览

试试这个:

constructor(  public router: Router,) {
this.route.params.subscribe(params => this._onRouteGetParams(params));
}
this.router.navigate(['otherRoute']);

这个应该可以

import { Router } from "@angular/router"


export class YourClass{


constructor(private router: Router) { }


YourFunction() {
this.router.navigate(['/path']);
}


}

你应该像这样在你的构造函数中注入路由器;

constructor(private router: Router) { }

then you can do this anywhere you want;

this.router.navigate(['/product-list']);

角度导航: 手动导航

首先你需要导入角度路由器:

import {Router} from "@angular/router"

然后将其注入到组件构造函数中:

constructor(private router: Router) { }

最后,在需要“重定向”的任何地方调用 .navigate方法:

this.router.navigate(['/your-path'])

你也可以在你的路线上设置一些参数,比如 user/5:

this.router.navigate(['/user', 5])

文件: 有角度的官方文件

在 angularjs 中重定向4 Button for event in eg:app.home.html

<input type="button" value="clear" (click)="onSubmit()"/>

以及家庭组件

 import {Component} from '@angular/core';
import {Router} from '@angular/router';


@Component({
selector: 'app-root',
templateUrl: './app.home.html',
})


export class HomeComponant {
title = 'Home';
constructor(
private router: Router,
) {}


onSubmit() {
this.router.navigate(['/doctor'])
}
}

手动角度重定向: 导入 @angular/router,在 constructor()中注入,然后调用 this.router.navigate()

import {Router} from '@angular/router';
...
...


constructor(private router: Router) {
...
}


onSubmit() {
...
this.router.navigate(['/profile']);
}

使用 Component. ts 文件上的函数重定向到另一个页面

组件:

import {Router} from '@angular/router';
constructor(private router: Router) {}


OnClickFunction()
{
this.router.navigate(['/home']);
}

.html:

<div class="col-3">
<button (click)="OnClickFunction()" class="btn btn-secondary btn-custom mr-3">Button Name</button>
</div>

对于您的问题,您可能有足够的正确答案,但是如果您的 IDE 给出了警告的话

导航返回的承诺被忽略

你可以忽略这个警告或者使用 this.router.navigate(['/your-path']).then()