为什么这不是TypeScript?

Jam*_*mie 1 mongoose typescript

这是我正在尝试做的简化示例:var在一行上声明一个变量,然后稍后导出它.

var Game = {};
export Game;
Run Code Online (Sandbox Code Playgroud)

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

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

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

编辑:我可以做到这一点,但感觉很尴尬.

var _Game = {};
export var Game = _Game;
Run Code Online (Sandbox Code Playgroud)

Frx*_*rem 5

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

var Game = {};
export { Game };
Run Code Online (Sandbox Code Playgroud)

资源