VS Code + jsconfig.json:对于具有内置类型的 NPM 模块,“找不到模块...”

问题描述

我有一个正在 Visual Studio Code 中编辑的 JavaScript 项目。我已经为它定义了以下 jsconfig.json 文件

{
    "compilerOptions": {
        "checkJs": true,"strict": true,"target": "ES2020"
    },"include": [
        "api/**/*.js","bin/**/*.js","lib/**/*.js","models/**/*.d.ts","models/**/*.js","test/**/*.js"
    ]
}

与大多数项目一样,这个项目依赖于 NPM 依赖项。其中一些依赖项具有内置的类型定义,而另一些则没有。例如,该项目中的两个是 'aws-sdk',它带有自己的类型定义,而 'express' 没有(但由于绝对类型化,它具有外部提供的类型定义)。

让我摸不着头脑的是 VS Code 的 JavaScript 语言服务器/TypeScript“找不到模块 'aws-sdk'”(如下例所示),但没有关于 'express' .

const express = require('express')
const AWS = require('aws-sdk') // Cannot find module 'aws-sdk'. Did you mean to set the 'moduleResolution' option to 'node',or to add aliases to the 'paths' option? ts(2792)

这在整个代码库中是一致的——VS Code 找不到具有自己类型定义的依赖项,而具有外部提供的类型定义的依赖项(无论是显式添加为依赖项,例如 yarn add -D @types/express,还是自动添加) VS Code 获取的类型)被 VS Code 发现就好了。

是否有我需要调查的 jsconfig.json 设置,以告诉 VS Code 除了在 node_modules/ @types?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)