Angular 错误-未捕获(承诺中)-错误-必须定义令牌

Angular 错误-未捕获(承诺中)-错误-必须定义令牌,angular,angular2-routing,angular2-forms,Angular,Angular2 Routing,Angular2 Forms,我在我的一条路线上加了一个canDeactivate守卫。我创建服务,将其添加到功能模块的提供者,并将其添加到路由本身。当我尝试访问该路由时,会出现如下所示的异常 目前的canDeactivate非常简单: import { Injectable } from '@angular/core'; import {CanDeactivate, Router} from '@angular/router'; import { IrEditComponent } from'./index'; @In

我在我的一条路线上加了一个canDeactivate守卫。我创建服务,将其添加到功能模块的提供者,并将其添加到路由本身。当我尝试访问该路由时,会出现如下所示的异常

目前的canDeactivate非常简单:

import { Injectable } from '@angular/core';
import {CanDeactivate, Router} from '@angular/router';
import { IrEditComponent } from'./index';


@Injectable()
export class ReferralGuardService implements CanDeactivate<IrEditComponent> {

  canDeactivate(component: IrEditComponent) { 
    return true;
  }
}
从'@angular/core'导入{Injectable};
从'@angular/Router'导入{CanDeactivate,Router};
从“./index”导入{IrEditComponent};
@可注射()
导出类ReferralGuardService实现CanDeactivate{
canDeactivate(组件:IrEditComponent){
返回true;
}
}
例外情况如下:

错误:未捕获(承诺中):错误:必须定义令牌! 错误:必须定义令牌!在新的ReflectKey上(core.es5.js:1405) [角度]在 KeyRegistry.webpackJsonp…/../core/@angular/core.es5.js.KeyRegistry.get (core.es5.js:1452)[角度]at Function.webpackJsonp…/../../core/@angular/core.es5.js.ReflectiveKey.get (core.es5.js:1423)[角度] 在ReflectiveInjector.webpackJsonp…/../core/@angular/core.es5.js.ReflectiveInjector.get (core.es5.js:2489)[角度] 在ResolvingModuleDep(core.es5.js:9473)[角度] 在 NgModuleRef.webpackJsonp…/../core/@angular/core.es5.js.NgModuleRef.get (core.es5.js:10555)[角度] 在ResolvingModuleDep(core.es5.js:9473)[角度] 在NgModuleRef.webpackJsonp…/../core/@angular/core.es5.js.NgModuleRef.get (core.es5.js:10555)[角度] 在PreActivation.webpackJsonp…/../router/@angular/router.es5.js.PreActivation.getToken (router.es5.js:4566)[角度] 在PreActivation.webpackJsonp…/../router/@angular/router.es5.js.PreActivation.getResolver (router.es5.js:4554)[角度] 在PreActivation.webpackJsonp…/../router/@angular/router.es5.js.PreActivation.resolveNode (router.es5.js:4534)[角度] 在PreActivation.webpackJsonp…/../router/@angular/router.es5.js.PreActivation.runResolve (router.es5.js:4515)[角度] 在MergeMapSubscriber.project(router.es5.js:4282)[角度] 在MergeMapSubscriber.webpackJsonp…/../../../../rxjs/operator/mergeMap.js.MergeMapSubscriber.\u tryNext (mergeMap.js:120)[角度] 在新的ReflectKey(core.es5.js:1405)[角度]