wzr*_*337 5 types amazon-web-services typescript aws-lambda
我正在 aws lambda 上构建一个打字稿项目。由于aws-sdk已经带有类型定义,我希望它也包含 aws lambda 的定义。但我似乎必须@types/aws-lambda单独安装它才能工作。
//import { Lambda } from "aws-sdk";
import { Context } from "aws-lambda";
module.exports.hello = async (event:any, context:Context) => {
return {
statusCode: 200,
body: JSON.stringify({
message: 'function executed successfully!',
input: event,
}),
};
};
Run Code Online (Sandbox Code Playgroud)
我希望这样的事情是可能的:
import { Lambda } from "aws-sdk";
module.exports.hello = async (event:any, context:Lambda.Context) => {
return {
statusCode: 200,
body: JSON.stringify({
message: 'function executed successfully!',
input: event,
}),
};
};
Run Code Online (Sandbox Code Playgroud)
但它不是;)
那么我该如何正确地做到这一点呢?
小智 5
不aws-sdk包含 lambda 的类型。aws-sdk所以不幸的是,你两者都需要@types/aws-lambda。另外我建议在您的@types/aws-lambda中声明.devDependenciespackage.json
import * as AWS from "aws-sdk";
import { Context } from "aws-lambda";
module.exports.hello = async (event:any, context:Context) => {
// eg. if you need a DynamoDB client
// const docClient: AWS.DynamoDB.DocumentClient = new AWS.DynamoDB.DocumentClient({region: 'ap-southeast-2'});
return {
statusCode: 200,
body: JSON.stringify({
message: 'function executed successfully!',
input: event,
}),
};
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
884 次 |
| 最近记录: |