如何使用systemjs和Angular2导出typescript枚举?
我正在尝试将Angular2与system.js和typescript一起使用。到目前为止,我一直在导出的接口工作得很好,但一旦我尝试导入一个枚举,它就会崩溃。在下面的代码中,如何使用systemjs和Angular2导出typescript枚举?,angular,typescript,systemjs,Angular,Typescript,Systemjs,我正在尝试将Angular2与system.js和typescript一起使用。到目前为止,我一直在导出的接口工作得很好,但一旦我尝试导入一个枚举,它就会崩溃。在下面的代码中,Card工作正常,但是当我导入Legend时,我得到了错误gethttp://localhost:3000/shared/legend 404(未找到) 以下是图例文件: export enum Legend { THE_RAPTOR, LINZA, ARIANE, OZAN } 为什么我
Card
工作正常,但是当我导入Legend
时,我得到了错误gethttp://localhost:3000/shared/legend 404(未找到)
以下是图例文件:
export enum Legend {
THE_RAPTOR,
LINZA,
ARIANE,
OZAN
}
为什么我不能导入普通枚举
到目前为止,对于我导出的接口来说,它工作得很好,但当我尝试导入枚举时,一切都崩溃了
接口是仅编译时的构造,因此对运行时没有影响。运行时不加载带有接口的文件。但是,包含运行时内容(如
类
/变量
/枚举
等)的文件会在运行时加载,并且这些文件会得到404。这是一个服务器安装错误。您需要允许加载这些JS文件 我遇到了一个非常类似的问题,最终通过在枚举之前导出一个“dummy”类解决了这个问题
`
导出类L{}
导出枚举图例{
猛禽,
林扎,
阿丽亚娜,
奥赞
}
从“../../shared/Legend”导入{L,Legend};
`
不幸的是,我不能说为什么这是必要的(虽然我看到一些评论说,没有类的枚举是不允许的,为什么不?!),但这对我很有帮助。在下面的代码中,我将演示如何导出类(constClass)包含可以在类服务中使用的const列表 -serviceAngularClass.js-
谢谢你的建议。我认为我的typescript目标是ES5,并且据我所知不支持枚举,这是另外一个问题,但这完全是另一个问题!
export enum Legend {
THE_RAPTOR,
LINZA,
ARIANE,
OZAN
}
...
import {WsRessources} from "./constClass";
@Injectable()
export class PersonneService {...
public functionName():Observable<any>{
return this.updateRessource(WsRessources.BasePath+WsRessources.affectLeavingDate...);
}
}//end Class
export class WsRessources {
public static BasePath='personnes';
public static affectLeavingDate='/affectLeavingDate';
}