我正在嘗試在安裝了 AWS Toolkit 的 VS Code 除錯器下通過 SAM 為使用 Typescript 撰寫的 Lambda 函式運行代碼。該代碼確實構建并成功部署到云,但在除錯器下運行它失敗,并出現此問題中描述的錯誤。
我的構建指定esModuleInterop: truein tsconfig.json,而 SAM 構建忽略它,而是構建為 if esModuleInterop: false。它似乎使用tsconfig.json下面給出的任意一個,而不是專案目錄中的一個。我怎樣才能讓它使用我的tsconfig.json,或者至少將特定的編譯器選項傳遞給tsc?
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"typeRoots": [
"node_modules/@types"
],
"types": [
"node"
],
"rootDir": ".",
"inlineSourceMap": true
}
uj5u.com熱心網友回復:
你能分享你的啟動配置嗎?如果您使用invokeTarget.target:template啟動配置(在您的 lambda 專案中需要一個 SAMtemplate.yaml檔案),它是否有效?
它似乎使用了下面給出的任意 tsconfig.json,而不是專案目錄中的那個
當您呼叫 typescript lambda 時,這目前是 AWS Toolkit for VSCode 的一個限制invokeTarget.target:code(歡迎提出功能請求!):
https://github.com/aws/aws-toolkit-vscode/blob/acbd172d8e0de799e880ba83aff1f6a5562f11af/src/shared/sam/debugger/typescriptSamDebug.ts#L137-L138
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/494906.html
標籤:打字稿 调试 视觉工作室代码 aws-lambda tsconfig
