最佳答案
我读了TypeScript模块分辨率的工作原理。
我有以下存储库:@陈志立。编译后的目录结构如下:
├── 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';
我做错了什么?