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

Posted

技术标签:

【中文标题】错误 TS2305:模块 \'"react"\' 没有导出的成员 \'Node\'【英文标题】:error TS2305: Module '"react"' has no exported member 'Node'错误 TS2305:模块 '"react"' 没有导出的成员 'Node' 【发布时间】:2022-01-16 16:57:12 【问题描述】:

我将 React Native 项目与官方文档一起运行,并将 TypeScript 添加到项目中。 我在执行 'yarn tsc' 时出现了很多 ESlint 错误,例如:

App.tsx:10:14 - error TS2305: Module '"react"' has no exported member 'Node'.

10 import type Node from 'react';

我知道这只是一个TS错误,但我很困惑,为什么代码'import type Node from 'react';'会产生这个错误

tsconfig.json:


  "compilerOptions": 
    "allowJs": true,
    "allowSyntheticDefaultImports": true,
    "esModuleInterop": true,
    "isolatedModules": true,
    "jsx": "react-native",
    "lib": ["es2017"],
    "moduleResolution": "node",
    "noEmit": true,
    "strict": true,
    "target": "esnext"
  ,
  "exclude": [
    "node_modules",
    "babel.config.js",
    "metro.config.js",
    "jest.config.js"
  ]

【问题讨论】:

【参考方案1】:

尝试添加tsconfig.json

"skipLibCheck": true,

【讨论】:

【参考方案2】:

因为 React 不导出名为 Node 的类型。也许您正在寻找ReactNode

TS Playground link

import type Node from 'react'; // error
import type ReactNode from 'react'; // ok

【讨论】:

以上是关于错误 TS2305:模块 '"react"' 没有导出的成员 'Node'的主要内容,如果未能解决你的问题,请参考以下文章

错误 TS2305:模块 '"http"' 没有导出的成员 'OutgoingHttpHeaders'。尝试将电子更新器添加到电子项目中时

错误 TS2305:模块“/node_modules/rxjs/Rx”没有导出的成员“可订阅”

node_modules/ng2-toastr/src/toast-container.component.d.ts(1,48) 中的错误:TS2305-/node_modules/@angular/

node_modules/rxjs-compat/operator/shareReplay.d.ts(2,10) 中的错误:错误 TS2305:

错误:错误:无法从 /node_modules/react-native-reanimated/src/reanimated2/index.ts 解析模块./Hooks

如何修复:“@angular/fire”'没有导出成员 'AngularFireModule'.ts(2305) ionic、firebase、angular