打字稿npm模块中的第三方依赖项

时间:2016-11-29 22:57:27

标签: javascript node.js typescript npm typescript-typings

我正在使用typescript构建一个npm模块,该模块在发布时将包含生成的react,' .js'和' .js.map'文件。该模块将依赖于其他模块,例如。 react-domtypings。现在我的问题是,当有人在他们的应用程序中安装我的模块时,如何检查安装应用程序是打字稿还是javascript项目,如果是打字稿项目,我该如何自动安装指定的所需typings.json依赖项在我的模块javac InsertionSort/*.java InsertionSort/Test_Driver.java:39: error: cannot find symbol array = Insertion_Sort(array); ^ symbol: method Insertion_Sort(int[]) location: class Test_Driver 中。

如果我在这里采用的方法有问题,那么也欢迎任何其他方法。

1 个答案:

答案 0 :(得分:1)

对于打字,我建议您允许您的消费者自己管理传递依赖。这意味着如果您通过打字依赖声明文件,请不要捆绑由typings安装的任何声明文件。相反,只需捆绑您自己的.d.ts文件,让消费者通过打字单独安装声明文件。

如果您使用TypeScript 2.0及更高版本,则只需使用npm和@types作为依赖项。 See more about @types on the official TypeScript blog post

例如,如果您依赖react套餐,那么您只需将@types/react添加到dependencies

中的package.json字段即可