我正在尝试使用Vue和TypeScript。我正在尝试在tsconfig中编译为AMD。
Vue.js随附的类型定义在vue / types / index.d.ts中声明
export default Vue;
但是,这会导致打字稿对此进行编译:
import Vue as "vue";
export default Vue.extend({ ... });
基本上是这样:
define(["vue"], function(vue) {
exports.default = vue.default.extend({ ... })
});
注意,它认为vue应该具有.default属性,而没有。无论如何,有没有写一个覆盖默认vue类型定义的类型定义,该状态声明如下:
export = Vue;
还是tsconfig中的一些标志告诉TypeScript不要将.default属性添加到已编译的AMD模块中?
答案 0 :(得分:2)
启用esModuleInterop
编译器选项将使TypeScript生成代码以在运行时检查vue
和vue.default
。
您注意到,Vue类型声明不准确,但是基于this previous issue,我不知道是否会很好地收到有关它的新问题。