typescript 找不到“bson”的类型定义文件,该文件在程序中,原因是:隐式类型库“bson”的入口点

b4qexyjb  于 2023-01-06  发布在  TypeScript
关注(0)|答案(2)|浏览(600)

我设置了新的Typescript/React项目,在tsconfig.json文件中收到此错误消息
“找不到'bson'的类型定义文件。该文件在程序中,原因是:隐式类型库“bson”的入口点“
任何想法。
这是我的tsconfig.json

{
  "compilerOptions": {
    "target": "es5",
    "lib": ["dom", "dom.iterable", "esnext"],
    "allowJs": true,
    "skipLibCheck": true,
    "strict": false,
    "forceConsistentCasingInFileNames": true,
    "noEmit": true,
    "esModuleInterop": true,
    "module": "esnext",
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "jsx": "preserve"
  },
  "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"],
  "exclude": ["node_modules"]
}
f0brbegy

f0brbegy1#

在github上找到了解决方案
如果typeRoots目录的子目录(在本例中为node_modules/@types)不包含index.d.ts,则会出现这些错误
对我来说,问题在于我创建的库确实导出了一堆interfacestypes
下面是一个例子

types-folder
├─── index.d.ts
└─── child-folder
     └─── index.d.ts // <-- Mandatory
piv4azn7

piv4azn72#

检查package.json中是否声明了一个空的@types/库,如下所述。
在我的例子中,我将"@types/": "react-navigation/native",安装在package.json中,这导致react-navigation/native直接安装在modules/@types文件夹中,从而导致此错误。
我通过从package.json中删除"@types/": "react-navigation/native",,删除node_modules文件夹,用yarn install重新安装库并保存tsconfig.json(发生错误的位置)来修复它。

相关问题