无法设置未定义的属性'router'

时间:2018-01-04 10:38:07

标签: angular angular2-routing

尝试导航到Angular 2中的“上传”页面时,我一直收到以下错误。

  

无法设置未定义的属性'router'。

我的代码:

import { Component, OnInit } from '@angular/core';
import { Router} from '@angular/router';
export class GameLandingComponent implements OnInit{
    ngOnInit(){
        //some codes and logics...
        this.router= Router;
        this.router.navigateByUrl('/upload');
    }
}

感谢有人能给我一些帮助.TIA。

2 个答案:

答案 0 :(得分:1)

你需要在构造函数中注入路由器而你缺少构造函数 试试这个 -

import { Component, OnInit } from '@angular/core';
import { Router} from '@angular/router';
export class GameLandingComponent implements OnInit{

    constructor(private router: Router){

    }

    ngOnInit(){

        this.router.navigateByUrl('/upload');
    }
}

答案 1 :(得分:0)

这不是你注入类的方式 将它注入构造函数

constructor(private router: Router){}
/// router now a private member of your class