小编wag*_*Man的帖子

使用index.ts文件导出类会导致注入的构造函数中的undefined

我使用index.ts文件封装出口,如角度2样式指南(https://github.com/mgechev/angular2-style-guide/blob/master/old/README.md#directory-structure)中所述.
这在我写的应用程序中运行良好,但由于某种原因,在一个服务中,我试图注入另一个服务,这会导致一个奇怪的错误.

导出的类:

import {Injectable} from "angular2/core";
@Injectable()
export class UserIds{
   private _signature_id:string;
   private _role_id:number;
   get signature_id():string{
      return this._signature_id;
   }
   set signature_id(id:string){
      this._signature_id = id;
   }
   get role_id():number{
      return this._role_id;
   }
   set role_id(id:number){
      this._role_id = id;
   }
}
Run Code Online (Sandbox Code Playgroud)

index.ts文件:

export {Midiate} from "./midiate.service/midiate.service";
export {HttpRest} from "./http_rest.service/http_rest.service";
export {UserIds} from "./user_ids.service/user_ids.service"
Run Code Online (Sandbox Code Playgroud)

导致错误的代码(导入文件):

import {UserIds} from "../index";
import {Http} from 'angular2/http';
@Injectable()
export class HttpRest{
 constructor(
    public _http: Http,
    public userIdsx: UserIds
 ){}
...
}
Run Code Online (Sandbox Code Playgroud)

浏览器抛出的错误:

EXCEPTION: Cannot resolve …
Run Code Online (Sandbox Code Playgroud)

javascript typescript angular2-services angular

9
推荐指数
1
解决办法
1699
查看次数