vue.js - 使用 Vue 和 TypeScript 扩展多个混入
我有以下简单的例子
const mixin1 = Vue.extend({
computed: {
mixin1_prop():number {
return 10;
},
},
});
const mixin2 = Vue.extend({
computed: {
mixin2_prop():number {
return 20;
},
},
});
// Now in component I want to extend both mixin1 and mixin2
mixin1.extend(mixin2).extend({
created() {
console.log(this.mixin1_prop);
console.log(this.mixin2_prop);
},
});
TypeScript 编译器对 mixin2_prop 提出警告,错误 属性 'mixin2_prop' 在类型 'CombinedVueInstance<Re' 上不存在
即使当示例在运行时运行时,一切按预期工作,数字10和数字20都被打印到控制台。
有人知道如何欺骗 TS 编译器,让它在组件代码中识别两个混入吗?