我正在用打字稿编写一个 NodeJs lambda 函数,它依赖于 Lambda 层才能工作。我在项目文件夹中创建了一个包含示例层的目录,然后使用 tsconfig 文件中的路径选项以便在本地测试它。然而,这工作得很好,当我构建代码来编译 JS 时,它包含我的示例层文件,因此当我部署 lambda 时,它会忽略真实层。如何让打字稿忽略示例层而不将其包含在构建中,以便当我将其部署到 lambda 时它使用真实层?
这是我的结构的一个简单示例来演示该问题:
- layers
- - myLayer.js
- src
- - app.js
myLayer.js:
Export default function doSomething(a, b) {
return a + b;
}
app.js:
const doSomething = require("/opt/nodejs/myLayer");
return doSomething(1, 2);
tsconfig.js:
{
"paths": {
"/opt/nodejs/*": [
"./layers/*"
]
}
}
你有没有考虑过打扫干净在打字稿之后,而不是预防添加文件的打字稿?
如果您正在使用 npm 您可以尝试添加postbuild
脚本。
你的scripts
在你的package.json
可能看起来像这样:
"scripts": {
"build": "rm -r ./dist && tsc",
"postbuild": "cd dist && rm -r ./layers"
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)