如何让 Typescript 脚本使用 tsconfig 中定义的路径?

How can I get a Typescript script to use the paths defined in tsconfig?

在我的 NodeJS/Typescript 项目中,我创建了一个脚本 database-init.script.ts,我 运行 使用示例数据初始化数据库。

我的 package.json 看起来像这样:

{
   "name": "myproject",
   ....
   "scripts": {
      ...
      "mongodb-setup": "tsc ./scripts/mongodb-setup.ts && node ./scripts/mongo-setup.js"
      
}

问题是脚本导入了一些本身使用 tsconfig paths 快捷方式的文件。例如有些文件有

import {AccountSchema} from '@schemas/account.schema'
...

我的脚本失败了,因为它无法识别这些。它给了我

error TS2307: Cannot find module '@schemas/account.schema' or its corresponding type declarations.

1 import {AccountSchema} from '@schemas/account.schema";

如何在不编译整个项目的情况下让脚本识别 tsconfig 定义的路径?

您似乎在寻找 ts-node

{
  "name": "myproject",
  ....
  "devDependencies": {
    ...
    "ts-node": "*"
  },
  "scripts": {
    ...
    "mongodb-setup": "node -r ts-node/register ./scripts/mongo-setup.ts"
  }
}