首先,我已经准备好了这个GitHub示例仓库以最小的方式来重现我的问题。
我遇到了一个问题,tsc
无法将我的TypeScript编译成JavaScript。
我正在使用导入别名,并且我能够直接使用ts-node
和tsconfig-paths
运行我的应用程序,就像这样:
ts-node -r tsconfig-paths/register main
但是,让我感到困惑的是,当我运行以下代码时:
tsc --outDir out main
我从编译器中看到 TS2307
错误,它抱怨找不到由我的导入别名定义的模块:
main.ts:1:24 - error TS2307: Cannot find module '@utils/.'.
1 import * as utils from '@utils/.';
~~~~~~~~~~
main.ts:2:22 - error TS2307: Cannot find module '@cmd/.'.
2 import * as cmd from '@cmd/.';
~~~~~~~~
我在这里缺少什么?我认为
tsc
应该没有任何问题,不需要任何“helper”(就像 tsconfig-paths
对于 ts-node
所做的那样)。