小编Cod*_*eak的帖子

Angular CanDeactivate 不起作用

我正在尝试CanDeactivate在路由中使用该函数,但canDeactivate在另一条路由上调用时从未调用该函数。

CanDeactivateGuard :

import { Injectable } from '@angular/core';
import { CanDeactivate } from '@angular/router';
import { Observable } from 'rxjs/Observable';

export interface CanComponentDeactivate {
  canDeactivate: () => Observable<boolean> | Promise<boolean> | boolean;
}

@Injectable()
export class CanDeactivateGuard implements  CanDeactivate<CanComponentDeactivate>{

  canDeactivate(component: CanComponentDeactivate) {
    return component.canDeactivate ? component.canDeactivate() : true;
  }
}
Run Code Online (Sandbox Code Playgroud)

目录视图组件:

import { Component } from '@angular/core';
import { Http } from '@angular/http';
import { Observable } from "rxjs";
import {CanComponentDeactivate} from '../../can-deactivate.guard';
@Component({
  selector: …
Run Code Online (Sandbox Code Playgroud)

typescript angular-routing angular

7
推荐指数
1
解决办法
4988
查看次数

标签 统计

angular ×1

angular-routing ×1

typescript ×1