【发布时间】:2018-07-12 01:11:59
【问题描述】:
我正在使用电子开发 Angular 2 应用程序。这就是我想要做的。
我在 html 中有一个下一个按钮
<button (click) = nextButtonClickedHandler()>
nextButtonClickedHandler描述如下:
public nextButtonClickedHandler() {
this.requestElectronMainProccess(this.afterResponseReceived);
}
private public afterResponseReceived() {
this._router.navigate(['/next', 'route']);
}
public requestElectronMainProccess(callbackFn: Function) {
this._electronService.send('request', 'some data');
this._electronService.once('response', callbackFn);
}
所以,这里,_router.navigate 之后控制台上的事件日志说
- 已识别路线
- 警卫检查开始
- Guards 检查成功
- 守卫检查结束
- 导航结束
我还添加了一个控制台语句来查看 promise 返回的内容。
this._router.navigate(['/next', 'route']).then(
success => console.log('navigation success');
failure => console.log('navigation end');
);
它打印“导航成功”。但是,该组件不加载。不知道发生了什么。任何帮助是极大的赞赏。
注意:如果不涉及电子,则不会发生这种情况。例如下面的代码工作得很好
public nextButtonClickedHandler() {
this._router.navigate(['/next', 'route']);
}
【问题讨论】: