vue3+ts获取组件类型的方法踩坑获取组件类型的方法
const accountref = ref<instancetype<typeof loginaccount>>()
遇到的坑typeof loginaccount一直报红线提示错误
loginaction: () => vo...' provides no match for the signature 'new (...args: any): any'.
问题原因使用的是webstorm codeing,通过webstorm自带右键新建vue文件,创建出来的文件是不带definecomponent的,所以导致上述的一直报红线
<script lang="ts">export default {}</script>
解决办法引用definecomponent
<script lang="ts">import { definecomponent } from 'vue'export default definecomponent({//注意这里的这个小括号不能漏})</script>
vue3+ts获取组件ref实例使用 vue3 和 ts 时,为了获取 组件 ref 实例,就需要在 ref 函数的泛型中指定类型。
如何获取组件的类型呢?vue 官方文档中 typescript 支持里已经告诉我们了一个获取组件类型的方法,instancetype<typeof 组件名称>
使用方式如下:
const $userform = ref<instancetype<typeof userform>>();
以上就是vue3+ts获取组件类型遇到的坑怎么解决的详细内容。