Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular ngOnChanges()don';t检测路线参数_Angular - Fatal编程技术网

Angular ngOnChanges()don';t检测路线参数

Angular ngOnChanges()don';t检测路线参数,angular,Angular,我有以下代码: constructor(private http: Http, private route: ActivatedRoute,private router: Router) { this.userID = this.route.snapshot.params['userID']; } ngOnChanges() { this.getUser(); } 这段代码来自我的播放器配置文件组件,我从route参

我有以下代码:

constructor(private http: Http,
    private route: ActivatedRoute,private router: Router) { 
        this.userID = this.route.snapshot.params['userID'];
    }


    ngOnChanges()
    {
        this.getUser();
    }
这段代码来自我的播放器配置文件组件,我从route参数中获取userID,并使用此.getUser()对我的服务器进行API调用

使用ngOnInit()可以工作,但当路由在同一组件中更改为其他用户时,用户不会重新加载

我改为ngOnChanges(),现在它一次也没有被调用。似乎ngOnChanges只对@Input()有效,而我没有

如何在
userID
更改为其他用户时重新加载用户数据?

这可能会起作用:

private route: ActivatedRoute,private router: Router) { 
    this.userID = this.route.params.subscribe(params => {
      this.getUser(params['userID']);
    })
}