为什么这不是TypeScript?

时间:2016-12-08 21:51:17

标签: typescript mongoose

以下是我尝试做的简化示例:在一行上声明一个带有var的变量,然后稍后将其导出。

var Game = {};
export Game;

当我尝试编译它时,我收到此错误:

  

错误TS1128:预期的声明或声明。

我需要这个的原因是我使用的是Mongoose,其中mongoose.model<Interface>()创建了一个模型类。我想在原型中添加函数,然后将其导出。

编辑:我能做到这一点,但感觉很尴尬。

var _Game = {};
export var Game = _Game;

2 个答案:

答案 0 :(得分:5)

当您导出先前声明的变量时(通常在TypeScript和ES6导出中),您需要使用大括号:

var Game = {};
export { Game };

Source

答案 1 :(得分:2)

只需使用

export var Game = {};

var Game = {};
export { Game };

参考:typescript doc