我有一个项目,它的结构如下:
project/
├── package.config
├── node_modules/
│ ├── interactjs/
│ ├── ├── index.d.ts
├── src/
│ ├── browser/
│ | ├── tsconfig.json
│ | ├── index.ts
我有以下的
./package.json
文件:{
...
"dependencies": {
"interactjs": "1.3.4"
},
"devDependencies": {
"typescript": "3.2.2"
}
}
我的./src/browser/tsconfig.json
文件如下:
{
"compilerOptions": {
"target": "es5",
"module": "none",
"declaration": true,
"strict": true,
"strictNullChecks": false,
"outDir": "./out"
},
"typeRoots": [
"../../node_modules",
"../../node_modules/@types",
"../definitions"
],
"include": [
"./**/*"
]
}
正如您所看到的,我也包括了 definitions
文件夹,因为有一些手动定义我想要在项目的所有 TypeScript 文件中包含。
问题
以下内容编译失败:
const p : interact.Position = { x: 1, y: 2 };
带有错误信息:
index.ts:9:11 - error TS2503: Cannot find namespace 'interact'.
9 const s : interact.Position = { x: 1, y: 2 };
~~~~~~~~
尽管在
node_modules/interactjs
文件中存在所有定义的 index.d.ts
,但仍然找不到 interact
。问题出在哪里?
project/node_modules/inderactjs/index.d.ts
吗? - Jesse Hallettproject/node_modules/interactjs/dist/interact.d.ts
。 - Jesse Hallett