输入'类:字符串; ' 不可分配给类型 'DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>'
Posted
技术标签:
【中文标题】输入\'类:字符串; \' 不可分配给类型 \'DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>\'【英文标题】:Type ' class: string; ' is not assignable to type 'DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>'输入'类:字符串; ' 不可分配给类型 'DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>' 【发布时间】:2022-01-15 00:53:50 【问题描述】:我正在使用 vue、ts、vite 扩展名。
在 Vs 代码中,我得到了错误
Type ' class: string; ' is not assignable to type 'DetailedhtmlProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>'. Property 'class' does not exist on type 'DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>'. Did you mean 'className'?ts(2322)
当我为class
做<div class=""></div>
时
当我将鼠标悬停在 div
上时,我看到了
(property) div: React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>
我不知道是什么让 vs 代码假设我正在使用 react。文件类型为.vue
我禁用了 eslint,但仍然出现错误。它在我运行应用程序时有效,但在 vscode 中看到该错误很烦人。
我应该添加一些d.ts
文件吗?
【问题讨论】:
文件类型是什么?你在写jsx吗? @vatz88 不,是.vue
@vatz88 我正在使用脚本设置(v3.vuejs.org/api/sfc-script-setup.html)
使用内部类型然后 (DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>
) 或更改您的类型,因为 DOM 元素确实不包含 class
属性,也许您的意思是 className
/ classList
?
你也可以使用type extendedType = DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement> & class: string
扩展类型
【参考方案1】:
添加此修复它。见这里:https://github.com/johnsoncodehk/volar/discussions/592
// tsconfig.json
"compilerOptions":
// ...
"types": [
"vite/client", // if using vite
// ...
]
我认为当我添加故事书时它添加了反应类型
【讨论】:
以上是关于输入'类:字符串; ' 不可分配给类型 'DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>'的主要内容,如果未能解决你的问题,请参考以下文章
在 Immutable.js 中,类型“字符串”不可分配给 keyof
输入'元素 | undefined' 不可分配给类型 'ReactElement<any, string | ((道具:任何)