如何获取组件类型,以便我可以在打字稿界面中使用它 - Vue 3

Sam*_*arz 8 typescript vue.js vuejs3

我只是想设置一组组件,以便稍后可以进行一些动态组件切换。但我一直坚持让 Typescript 来使用它,无论我以何种方式在网上提出问题,所有以前的答案都是关于完全不同的事情。

我已经提供了我想要做的事情的屏幕截图。我希望能够编写一个打字稿接口并为其提供与我传递的任何 vue 组件相对应的类型。它只需要确保它是一个正在传递的 vue 组件,我不在乎它是什么组件。我基本上需要一个 vue 组件类型定义。我怎么做?

我想要的例子

ton*_*y19 24

Component正如您所尝试的那样,确实是正确的类型,但您需要在使用前导入它:

\n
<script setup lang="ts">\nimport type { Component } from \'vue\'\n\xe2\x8b\xae\ninterface Props {\n  header?: Component\n  body?: Component\n  footer?: Component\n}\n\nconst fragments: Props = {\n  header: FragProfile,\n  body: FragSubject,\n  footer: TypeSection\n}\n</script>\n
Run Code Online (Sandbox Code Playgroud)\n

演示

\n