打字稿错误:TS2339:类型“JSX.IntrinsicElements”上不存在属性“span”

RND*_*hts 8 typescript reactjs

突然之间,我的 react typescript 项目开始拒绝<span>标签

TS2339: Property <span> does not exist on type 'JSX.IntrinsicElements'
Run Code Online (Sandbox Code Playgroud)

每个其他标签都绝对没问题,但<span>.tsx文件中的任何地方都会引发此错误。

任何人都可以建议吗?

dat*_*oml 26

我有同样的问题,但对我来说,这是p元素。错误的原因是我重构了一个p元素h3,例如,VSCode 也改变了类型定义。

正如您指出的那样,清理 node_modules 并重新做一个npm install就可以了。

只是想指出可能导致问题的原因。

  • 简单的“npm uninstall @types/react”和“npm install @types/react”也很好,对我来说,不需要删除整个node_modules。有的人删了好久 呵呵 (7认同)
  • 您是否报告了针对 VSCode 的缺陷?修改节点模块目录下的文件似乎是假的。 (3认同)
  • 谢谢。我遇到了同样的问题。在 VSCode 中通过 F2 重构(重命名)一个元素,并在 node_modules/@types/react/index.d.ts 的“interface IntrinsicElements”中重命名了 div 的类型定义。 (2认同)

bas*_*rat 5

任何人都可以建议吗?

  • 确保您import * as React from 'react'的文件中有
  • 更新反应类型 npm install @types/react