#node.js #typescript #lambda #serverless
#node.js #typescript #лямбда #бессерверный
Вопрос:
У нас есть приложение NodeJS, написанное на typescript. Мы используем модули, использующие относительные пути, например
import foo from '@/bar';
У нас есть следующая запись путей в tsconfig.json
"paths": {
"@/*": [
"./*"
]
}
Поскольку typescript не поддерживает преобразование путей, мы используем ttypescript для компиляции и переопределения tsconfig.json с помощью tsconfig.build.json
{
"extends": "./tsconfig.json",
"compilerOptions": {
"plugins": [
{
"transform": "@zerollup/ts-transform-paths"
}
]
},
"exclude": ["node_modules/**", "tests/**"]
}
и используйте yarn для создания кода
yarn clean amp;amp; ttsc --project ./tsconfig.build.json
Теперь это создает код и преобразует относительные пути @module в абсолютные.
Далее мы используем бессерверную платформу для сборки и развертывания этого кода как lambda. Бессерверный использует tsconfig.json для построения кода и эффективно игнорирует пользовательское преобразование пути.
Вопрос:
- возможно ли решить вышеуказанную проблему без использования ttypescript и плагина?
- Можно ли настроить serverless для использования ttypescript и пользовательского tsconfig
- Есть ли другой способ решить проблему?
Спасибо
Комментарии:
1. есть успехи с этим? Сейчас у меня такая же проблема
2. пока нет. Я также поднял это на бессерверном канале slack и не получил ответа
3. 3 квартал 2021 года, и это по-прежнему лучшее решение