命名空间“React”没有导出成员“InputHTMLAttributes”并且接口“MenuItemProps”错误地扩展了接口“ListItemProps”

Posted

技术标签:

【中文标题】命名空间“React”没有导出成员“InputHTMLAttributes”并且接口“MenuItemProps”错误地扩展了接口“ListItemProps”【英文标题】:Namespace 'React' has no exported member 'InputHTMLAttributes' and Interface 'MenuItemProps' incorrectly extends interface 'ListItemProps' 【发布时间】:2018-02-19 13:28:00 【问题描述】:

我正在使用带有 typescript 的 Material-UI,我已经使用

安装了 typescript 类型

npm install -D @types/material-ui.

当我的网页现在加载时,我收到以下错误:

[at-loader] 中的错误 ./node_modules/@types/material-ui/index.d.ts:1235:26 TS2430:接口“MenuItemProps”错误地扩展了接口“ListItemProps”。属性“标签”的类型不兼容。 类型 'ReactNode' 不可分配给类型 'string |不明确的'。 类型 'null' 不能分配给类型 'string |未定义'。

[at-loader] 中的错误 ./node_modules/@types/material-ui/index.d.ts:1491:69 TS2694:命名空间“React”没有导出的成员“InputhtmlAttributes”。

除了在 node_modules 中添加 material-ui 之外,我的项目绝对没有其他更改,甚至没有导入,问题可能来自其类型导入。

所以我想出了一个非常老套的解决方案,在我的 tsconfig.json 中添加了 "noImplicityAny":false。不过,这实际上并不能解决问题,如果能得到适当的解决,我将不胜感激。

【问题讨论】:

我猜你可以简单地使用打字稿而不安装任何外部插件,不是吗? 如果您使用的是 V1 beta.8,您只需安装该软件包。确保你卸载了@types,否则你会遇到冲突。您可能希望显示更多代码。配置?网络包? + 【参考方案1】:

我认为您需要升级到最新版本的 @types/react。

【讨论】:

【参考方案2】:

我遇到了同样的问题,我发现它是由 node_modules/@types/react 文件夹中缺少的 global.d.ts 文件引起的。

手动运行后

npm install @types/react --save

已经解决了。

【讨论】:

以上是关于命名空间“React”没有导出成员“InputHTMLAttributes”并且接口“MenuItemProps”错误地扩展了接口“ListItemProps”的主要内容,如果未能解决你的问题,请参考以下文章

命名空间“Electron.CrossProcessExports”没有导出成员“远程”

命名空间“NodeJS”没有导出成员“Require”

TS2694 (TS) 命名空间 'angular' 没有导出的成员 'ui'

模块“react”没有导出成员“SuspenseList”。 TS2305

react-bootstrap 模块没有导出成员

错误 TS2305:模块 '"react"' 没有导出的成员 'Node'