微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从已安装的属性“函数”调用方法时出错,类型不存在

如何解决从已安装的属性“函数”调用方法时出错,类型不存在

我收到此错误属性 'load' 在类型 '{ name: string; components: { IonHeader:”上不存在 当我尝试从mounted() 调用函数load 时。 消息显示在控制台中,但我收到此错误

<script lang="ts">
import {
  IonHeader,IonToolbar,IonTitle,IonContent,//IonIcon,//IonButtons,IonButton,alertController,} from "@ionic/vue";
import { logout,add } from "ionicons/icons";
import { mapActions,mapGetters } from "vuex";
import { useRouter } from "vue-router";
import "../style/Home.scss";
export default {
  name: "ListDatos",components: {
    IonHeader,},data() {
    return {
      msg: "",datos: [],};
  },setup() {
    const router = useRouter();
    return {
      add,mounted() {
    console.log("Test mounted");
    this.load();
  },methods: {

    load(){
      console.log("function load()");
    },};
</script>

解决方法

那是因为 TypeScript 正在尝试猜测类型,并且由于您正在执行:export default {...all your code...} 对于只是一个对象的 TS,您需要指出它不仅仅是一个对象,实际上它是一个 Vue组件,这里是从文档中提取的代码(检查 docs here

import Vue from 'vue'

const Component = Vue.extend({
  // type inference enabled
})

正如您在该代码中看到的,组件定义包含在 Vue.extend() 中,因此您可以拥有自己的代码:

export default Vue.extend({
   //...your component...
})

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。