VUE3 + IONIC - 属性 'foo' 不存在于类型 '{ bar(): any; }'

VUE3 + IONIC - Property 'foo' does not exist on type '{ bar(): any; }'

我在 vue3 + ionic 上遇到错误,我尝试制作一个组件以使用 computed 获取图像并从 props 获取变量。这是我的代码

Home.vue

<MenuIcon name="subscribe" fileName="subscribe.png" />

MyComponent.vue

export default { 
  name: 'MenuIcon',
  props: {
    name: String,
    fileName: String
  },
  computed: {
    iconPath(): any{     
      return require('../../public/assets/icon/icon menu/'+this.fileName)
    }
  }
}

我试图将我的 fileName 属性 更改为对象并将我的 iconPath 属性 类型更改为字符串或函数,但仍然出错。请帮忙

之前感谢

我认为你的代码没有问题,但奇怪的是当你使用 ionic + vue + ts 和 export default {}

时没有 this.filename 的错误

您可以尝试添加 defineComponent 看看是否有帮助吗?

import { defineComponent } from "vue";

export default defineComponent({
  name: "MenuIcon",
  props: {
    name: String,
    fileName: String,
  },
  computed: {
    iconPath(): any {
      return require("../public/assets/icon/" + this.fileName);
    },
  },
})