Как настроить свойство paths в файле tsconfig.json для внешних библиотек - PullRequest
0 голосов
/ 05 июля 2019

Самое близкое объяснение того, что я пытаюсь сделать, было найдено здесь [ссылка] .Тем не менее, я изо всех сил пытаюсь найти решение для компиляции.

У меня есть внешние типы, которые я хотел бы использовать в своем проекте, и у всех них есть .d.ts файлы с пространством имен "DS /", который я храню в папке, называемой набор текста.Ниже приведена структура папок для моего простого приложения Angular.

-MyAppName
--typings
----all my modules d.ts
--src
----app
-tsconfig.json

это мой файл tsconfig.json, как показано ниже

"compileOnSave": false,
  "compilerOptions": {
    "baseUrl": ".",
    "outDir": "./dist/out-tsc",
    "sourceMap": true,
    "declaration": false,
    "downlevelIteration": true,
    "experimentalDecorators": true,
    "module": "esnext",
    "moduleResolution": "node",
    "importHelpers": true,
    "target": "es2015",
    "typeRoots": [
      "node_modules/@types"
    ],
    "lib": [
      "es2018",
      "dom"
    ],
    "paths": {
      "DS/*": [
        "typings/*"
      ],
      "*": [
        "src/*"
      ]
    }
  },
  "include": [
    "typings/**/*.ts"
  ],
  "exclude": [
    "node_modules"
  ],
  "angularCompilerOptions": {
    "fullTemplateTypeCheck": true,
    "strictInjectionParameters": true
  }

Я получаю ошибку при импорте моей библиотеки, как показано ниже: import {MyModuleName} из 'DS / MyModuleName';

ОШИБКА в ./src/app/app.module.ts Модуль не найден: Ошибка: не удается разрешить 'DS / MyModuleName' в 'MyAppName \ src \ app'

Я использую AngularCLI для сборки приложения.Мне не удалось настроить мой файл tsconfig для поддержки этих импортированных извне библиотек.Не уверен, что я делаю не так.Пожалуйста, помогите.

1 Ответ

0 голосов
/ 05 июля 2019

в соответствии с вашим деревом, попробуйте в tsconfig.ts

"typeRoots": ["node_modules/@types", "typings" ]...

"paths": {
  "DS/*": [
    "typings/*"
  ],
}

"include": ["src", "typings"],

тогда в вашем app.module.ts

import { MyModuleName} from 'DS/myModuleName.module';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...