基于 Vue 3 Typescript 的项目中的类型问题

Posted

技术标签:

【中文标题】基于 Vue 3 Typescript 的项目中的类型问题【英文标题】:Types issue in Vue 3 Typescript based Project 【发布时间】:2021-12-22 05:49:09 【问题描述】:

我在 Vue 组件中使用了一个 v-for 循环,其中应该迭代一个 Prop options,即 type of Object

道具在单独的文件中声明。

请看下面的附件:

Vue 组件:

Props 在 props.ts 中声明:

注意:options 返回一个字符串对象,我将其用于复选框或单选按钮项目。

如何解决这种类型的问题?

【问题讨论】:

您是否尝试将您的道具定义为Record<string, any> 而不是Object 我注意到您正在使用 Vetur。 Volar 是 Vue 中 TypeScript 支持的推荐扩展。尝试切换。 我正在使用 VsCodium,它没有 Volar 兼容性。 @Thomas 是的,我做到了,但它采用 作为值而不是类型,并显示与错误相同。 【参考方案1】:

我通过使用返回对象的默认值和删除未定义类型解决了这个问题。

options: 
   type: Object,
   required: true,
   describe: "Provide a collection of components to render in the group",
   default: function (): unknown 
     return 
   ,
,

注意:我不确定这是否是该类型问题的正确解决方案。

【讨论】:

以上是关于基于 Vue 3 Typescript 的项目中的类型问题的主要内容,如果未能解决你的问题,请参考以下文章

Vue+TypeScript项目实践(一)

基于 Vue CLI / Typescript 的项目不再构建或运行 Mocha 测试

在基于vue-next-admin的Vue3+TypeScript前端项目中,为了使用方便全局挂载的对象接口

almost最好的Vue + Typescript系列02 项目结构篇

vue之--使用TypeScript

vue组件库基于@vue/cli构建typescript版UI库 -环境搭建