...如果该库也应该用于Typescript项目?
我正在制作一个使用eval(arr.join(""))
和node-fetch
的Typescript库,并将该库发布到公司内部的NPM中。
如果我仅将@types/node-fetch
声明为与开发相关,那么该库的用户(也在其项目中使用Typescript)将需要手动安装缺少的类型,因为不会传播与开发相关的信息。
到目前为止,我发现的唯一解决方案是将@types/node-fetch
声明为普通依赖项,但是从某种程度上来说,这是非常错误的(因为通常不需要“运行时”类型)。
这种方法正确吗?还是更好的方法?
答案 0 :(得分:2)
如果您的公共API依赖于@types/node-fetch
的声明,那么将@types/node-fetch
声明为普通依赖关系是正确的。参见this thread。