Как использовать абсолютный путь с Typescript? - PullRequest
0 голосов
/ 05 марта 2020

У меня есть проект, написанный на Typescript на NodeJS. Я использую относительный путь для своих модулей, чтобы импортировать другой. Но это использование становится грязным, пока проект растет. Поэтому я хочу преобразовать относительные пути в абсолютные.

Вот структура папок моего проекта:

src
├── controllers
├── repositories
├── services
│   ├── user.service.ts
|── tsconfig.json

Я хочу использовать другой модуль импорта, как показано ниже.

import userServices from "src/services/user.service";

tsconfig. json

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

Вышеуказанные конфигурации не работают в моей рабочей области.

Не могли бы вы помочь мне с этим?

Ответы [ 2 ]

0 голосов
/ 05 марта 2020

Существует функция TypeScript , которая позволяет это.

Вы можете изменить файл src/tsconfig.json, чтобы включить это, в разделе compilerOptions добавьте следующее:

{
  "compilerOptions": {
    // ...
    "paths": {
      "*": [
        "./*",
        "app/*",
        "../node_modules/*"
      ]
    }
}

Очевидно, вы можете изменить ключ и значения шаблона по мере необходимости. Вы можете добавлять или удалять папки, вы можете изменить порядок и т. Д. c.

Вы также можете выбрать префикс вместо * (особенно, если это вызывает проблемы), вы можете использовать что-то вроде ~ / *, и тогда ваш импорт будет из '~/shared/sample' et c.

0 голосов
/ 05 марта 2020

Добавьте это в свой tsconfig. Измените путь в соответствии с вашими требованиями

{
  "compilerOptions": {
    "baseUrl": "./src"
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...