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