dan*_*cek 6 webstorm typescript typescript1.4
我在我的TypeScript项目中使用AMD模块(编译器标志"--module amd").虽然我可以在我的课程上轻松使用getter/setter,但我想在我的模块上做同样的事情
export get abc() : string {
    return "abc";
}
回报
错误TS1008:意外的令牌; '模块,类,接口,枚举,导入或声明'预期.
和
export function get abc() : string {
    return "abc";
}
回报
错误TS1005:'('预期.
我究竟做错了什么?
使用以下特殊export = ...语法可以实现:
class MyModule {
    get abc() {
        return "abc";
    }
}
var myModule = new MyModule();
export = myModule;
这使得该类的实例MyModule充当模块的API。您不必在类中放入任何数据-只需将函数移入类中,否则就可以保持不变。缺点是,如果函数a调用函数b,则必须说this.b()或myModule.b()(后者更接近正常的模块导出)。
另外,您必须先声明一个命名变量。您不能只说:
export = new MyModule(); // This doesn't work
| 归档时间: | 
 | 
| 查看次数: | 2783 次 | 
| 最近记录: |