Как я могу заставить скрипт Typescript использовать пути, определенные в 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, без компиляции всего проекта?

1 ответ

Решение

Похоже, вы ищете ts-node.

{
  "name": "myproject",
  ....
  "devDependencies": {
    ...
    "ts-node": "*"
  },
  "scripts": {
    ...
    "mongodb-setup": "node -r ts-node/register ./scripts/mongo-setup.ts"
  }
}
Другие вопросы по тегам