Я прочитал, как работает разрешение модуля TypeScript .
У меня есть следующий репозиторий: @ ts-stack / di . После компиляции структура каталогов выглядит следующим образом:
├── dist
│ ├── annotations.d.ts
│ ├── annotations.js
│ ├── index.d.ts
│ ├── index.js
│ ├── injector.d.ts
│ ├── injector.js
│ ├── profiler.d.ts
│ ├── profiler.js
│ ├── providers.d.ts
│ ├── providers.js
│ ├── util.d.ts
│ └── util.js
├── LICENSE
├── package.json
├── README.md
├── src
│ ├── annotations.ts
│ ├── index.ts
│ ├── injector.ts
│ ├── profiler.ts
│ ├── providers.ts
│ └── util.ts
└── tsconfig.json
В моем package.json я написал "main": "dist/index.js"
.
В Node.js все отлично работает, но TypeScript:
import {Injector} from '@ts-stack/di';
Не удалось найти файл объявления для модуля '@ ts-stack / di'. '/path/to/node_modules/@ts-stack/di/dist/index.js' неявно имеет тип 'any'.
И все же, если я импортирую следующим образом, то все работает:
import {Injector} from '/path/to/node_modules/@ts-stack/di/dist/index.js';
Что я делаю не так?
npm install @types/node --save-dev