【发布时间】:2019-07-08 19:17:32
【问题描述】:
我刚刚向 NPM 注册表ooafs 发布了一个新的基于 TypeScript 的模块。但是,当我尝试安装它并将其导入另一个 TypeScript 项目时,VSCode 在导入语句中给出以下错误:Cannot find module 'ooafs'.ts(2307)。
这个模块的源文件被编译成 JavaScript 到一个dist/ 文件夹并且定义 (.d.ts) 也被生成。
这是已发布模块的树(我们@987654326@时下载的那个):
.
├── dist
│ ├── Entry.d.ts
│ ├── EntryFilter.d.ts
│ ├── EntryFilter.js
│ ├── Entry.js
│ ├── EntryType.d.ts
│ ├── EntryType.js
│ ├── FSTypings.d.ts
│ ├── FSTypings.js
│ ├── index.d.ts
│ └── index.js
├── LICENSE
├── package.json
└── README.md
package.json 确实包含以下条目:
{
"main": "dist/index.js",
"types": "dist/index.d.ts",
...
}
因为模块在 Runkit(纯 JS)上正常工作,我认为我遇到的唯一问题与 TypeScript 相关,这不是 TypeScript 第一次告诉我模块不存在时缺少声明文件是唯一的问题.
我是否错过了编译过程中的一个步骤?
我的package.json 属性有错吗?
如果需要看更多代码,Github链接在问题的开头,发布的模块结构可以在这里找到:https://unpkg.com/ooafs@0.1.2/dist/。
【问题讨论】:
-
你在 node_modules 中看到
ooafs了吗?并且测试需要另一个错误或成功的模块。尝试关闭文件并打开(可能你没有下载打开,然后下载) -
模块 is 已下载(它位于
node_modules),所有其他模块加载都没有问题,我重新启动了 VSCode 没有任何改进。这个问题肯定与我的模块有关。
标签: node.js typescript npm node-modules