首页 > 解决方案 > 我的 Vue 组件中的 TypeScript 错误:TS2339:类型'{ myFunction(): void; 上不存在属性'X' }'

问题描述

我创建了一个 Vue2 组件,我想将它放在另一个 Vue 2 组件中。我在 TypeScript 文件中创建了组件。

const ChildrenAgeDropdown = {
  props: ["option"],
  data() {
    return {
      isOpen: false as boolean,
      options: arrayFromXToY(0, 11),
    };
  },
  methods: {
    toggle(): void {
      this.isOpen = !this.isOpen;
    },
  },

// ... The rest of the component.
}

代码运行良好,程序不会崩溃。

但是,我收到以下 Typescript 错误:

TS2339: Property 'isOpen' does not exist on type '{ toggle(): void; }'

不知道为什么。如你所见,我已经将属性声明isOpen为 Vue 组件的属性。我应该怎么做才能消除这个烦人的 Typescript 错误?

这是我的 IDE (WebStorm) 的快照,但出现错误:

在此处输入图像描述

标签: typescriptvue.jsvuejs2vue-component

解决方案


推荐阅读