псевдоним пути для машинописного текста требует наличия псевдонима модуля / регистрации в каждом файле - PullRequest
2 голосов
/ 31 октября 2019

Я использую машинопись v3.6.4 со следующим tsconfig.json фрагментом:


  "compilerOptions": {
    "moduleResolution": "node",
    "baseUrl": "./src",
    "paths": {
      "@config/*": ["config/*"],
      "@config": ["config"],
    }
  }

и псевдонимом модуля в package.json:

  "_moduleAliases": {
    "@config": "dist/config"
  }

У меня следующая структура папок:

src
 |-config
     |-index.ts
 |-app
     |index.ts
     |logic.ts
 |-dist

Теперь в app / index.ts, если я сделаю:

import 'module-alias/register';
import config from '@config';

, а мои npm start команды:

"start": "node -r ts-node/register ./src/app/index.ts",

tsc успешно скомпилируется, но npm start выдаст ошибку:

Error: Cannot find module '@config' in src/app/logic.ts

И единственный способ исправить это - добавить

import 'module-alias/register';

в src/app/logic.ts

Кажется, я должен добавить import 'module-alias/register' в каждый файл, который я делаю псевдоним? Это способ настроить это?

...