Angular 4 function that calls route

南楼画角 提交于 2019-12-23 02:17:19

问题


I have routing set up through a menu in my Angular web-app. The menu has routerLinks set up like the home link below:

<a routerLink="home">
            <button md-menu-item>
                <md-icon class="material-icons"> home </md-icon>
                <span> Home </span>
            </button>
        </a>

The app.router contains:

export const router: Routes = [
    { path: '', redirectTo: 'home', pathMatch: 'full'},
    { path: 'home', component: HomeComponent },
];

I want to have a button in a component that redirects to an enquiry form that is not available in the normal menu, but placing an link on a button in the component does not seem to work. Why is this?

The ideal thing for me to do would be to place a function in an html element in the component that called the route - is this possible?


回答1:


If I understand this correctly, yes it is of course possible.

Just add Router to your component constructor:

constructor(private router: Router) {}

and then you can call navigate function from Router class in your function which will be called after click on button, for example:

this.router.navigate(['home']);

Another possibility is to place [routerLink] in html tag:

<a [routerLink]="['/home']">Go To Home</a>

Check this:

https://angular.io/guide/router

https://angular.io/api/router/Router



来源:https://stackoverflow.com/questions/46044392/angular-4-function-that-calls-route

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!