我使用的是NPM软件包(例如FOO),在开发过程中,我想将此软件包与本地(与项目文件一起使用)Typescript定义文件文件相关联。我明确地不打算将定义文件作为NPM软件包发布,因为到目前为止,它不完整,仅涵盖我实际使用的库中的部分。
到目前为止,我已经尝试了以下内容:
将以下内容添加到tsconfig.json
"typeRoots": [
"./node_modules/@types",
"./src/types"
],
和./src/types/foo/index.d.ts
中添加的定义文件。但是,VSCODE和Typescript WebPack-Loader都无法将" FOO"导入与定义文件中的导出相关联。
处理此问题的正确方法是什么?
这几乎是我在这里所做的
为现有LIB创建了"我的类型"按照@Types的说明
并将其发布到"我的" github。而不是发布到@Types
最后
npm i git+https://github.com/my/repo.git
它将最终以node_modules/@types/chose-name
TSC期望它在哪里
我没有尝试过,但我不明白为什么它不应该从其他来源起作用
npm i ../myrepo
在tsconfig.json的"文件"部分中添加引用一个问题:
{
"compilerOptions": { ... },
"files" : ["./src/types/foo.d.ts"]
}
Dan提出的此解决方案也可以工作,但需要更多的工作 - 如果人们打算最终发布定义,这是理想的方法。