Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.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 在ngZone中导航到url时未调用OnInit方法_Angular - Fatal编程技术网

Angular 在ngZone中导航到url时未调用OnInit方法

Angular 在ngZone中导航到url时未调用OnInit方法,angular,Angular,我有两个组件,我试图在NgZone方法中导航到URL。但我面临的问题是,当我导航时,OnInit方法并没有被调用。代码如下: ngOnInit() { this._zone.run(() => { window['navigate'] = () => { this.route.navigate(['/users']; }; }); } 使用上述代码,我可以导航到/users URL。但在导航时未调用UsersC

我有两个组件,我试图在NgZone方法中导航到URL。但我面临的问题是,当我导航时,OnInit方法并没有被调用。代码如下:

ngOnInit() {
    this._zone.run(() => {
        window['navigate'] = () => {
          this.route.navigate(['/users'];
        };
    });
  }
使用上述代码,我可以导航到/users URL。但在导航时未调用UsersComponent onInit方法

我一直在寻找解决方案,似乎在ngZone中,我正在驶出角度范围。所以我尝试使用ChangeDetectorRef,但它不起作用,因为我正在远离URL导航。
请让我知道我的理解是否正确,并向我建议可能的解决方案。

尝试放置路由器。导航到单独的区域:

进口:

import { NgZone } from "@angular/core";
注入:

constructor(private zone: NgZone) { ... }
适用于:

this.zone.run(() => {
    this.router.navigate(["/users"]);
});

是的。。快速黑客。。谢谢