Javascript 如何配置webpack和Typescript以排除解析特定的仅键入软件包?

Javascript 如何配置webpack和Typescript以排除解析特定的仅键入软件包?,javascript,typescript,webpack,Javascript,Typescript,Webpack,我只使用@types/aws lambda的types包在代码中声明类型。我没有使用它的实际软件包,只是使用它的打字 在我的代码中,我仍然会像导入普通模块一样导入打字,如下所示: import { APIGatewayEvent } from 'aws-lambda'; const myApi: APIGatewayEvent = someEvent; 然而,当我试图通过webpack编译时,我得到一个错误: 未找到模块:错误:无法解析…中的“aws lambda” 这是webpack或Ty

我只使用
@types/aws lambda
的types包在代码中声明类型。我没有使用它的实际软件包,只是使用它的打字

在我的代码中,我仍然会像导入普通模块一样导入打字,如下所示:

import { APIGatewayEvent } from 'aws-lambda';

const myApi: APIGatewayEvent = someEvent;
然而,当我试图通过webpack编译时,我得到一个错误:

未找到模块:错误:无法解析…中的“aws lambda”


这是webpack或Typescript试图解决模块的问题吗?如何在tsconfig中配置webpack和,以排除尝试解析aws lambda的情况,在我的情况下,这只是用于解决错误的键入?

尝试将webpack配置为

还要确保你有合适的

您还可以仔细检查
tsconfig.json
文件。如果要显式设置
typeroot
,则需要包含
“/node\u modules/@types”

如果指定了typeRoots,则只包括typeRoots下的包


APIGatewayEvent
的用法被键入为
APIGatewayEvent
。我假设这与你的问题无关?由于拼写错误已经纠正,你提供的代码似乎对我有用。您的网页包配置、tsconfig中是否有特定内容,或者此包是否由另一个包依赖(对等依赖?)@skovy Ahh。。。谢谢你编辑我的打字错误。不过我的代码中没有那个打字错误。我不确定这个包是否有任何对等依赖,但我只是意识到,当我不声明并使用自己的decorator时,我不会得到这个错误。当我声明我的decorator时,除了它的类型之外,它也不使用这个包,错误就会发生。
aws lambda
是您在
src
目录中创建的文件吗?如果是这样,则需要包含文件的路径<代码>从“./path/to/file/aws lambda”导入{APIGatewayEvent}@automasean
aws lambda
是npm的一个软件包。但是我只安装了它的
@types
软件包,没有安装实际的软件包,因为我只需要它的打字。谢谢,但这仍然不起作用。我还是会犯同样的错误。
module.exports = {
  //...
  resolve: {
    extensions: ['.tsx', '.ts', '.js']
  }
};