打字稿无法识别属性类型

时间:2021-05-14 16:04:41

标签: typescript vue.js

即使我为 activeNumber() 声明了类型,this.activeIndex + 1 也带有红色下划线,并且 VS 代码显示“运算符 '+' 不能应用于类型 '(() => any) | ComputedOptions' 和 '数字'。”这怎么可能?我错过了什么?

import Vue from 'vue';

interface DataInterface {
  questions: [];
  results: [];
  activeIndex: number;
}

const Component = Vue.extend({
  props: {
    dataSrc: {
      type: String,
      default: null
    }
  },

  data(): DataInterface {
    return {
      questions: [],
      results: [],
      activeIndex: 0
    };
  },

  computed: {
    activeNumber(): number {
      return this.activeIndex + 1;
    }
})    
export default Component;

1 个答案:

答案 0 :(得分:0)

所以最终在重新启动我的计算机几次后错误消失了,就像 Ashish Deora 在评论中建议的那样。同事建议你也可以在VS code中重启Typescript服务器。当您 ctrl+shift+P 并搜索“typescript”时,会出现此选项。这比重新启动要快得多。