提问者:小点点

应该提交打字吗?如果没有,如何触发键入安装在npm安装不打破用户?


我有一个npm包(X),它是用Typescript编写的,并且使用安装了打字的类型。

我没有提交由typings生成的typings目录,因为我有一个typings。json,打字工具可以从中重新生成该目录。事实上,我添加了打字作为devDependency和npm脚本“postinstall”来运行“typings install”,因此任何新开发人员都可以在新签出时运行“npm install”后设置所有内容。

问题是,有另一个包使用这个包(例如。Y)。当用户转到“npm安装Y”时,他们下拉X,然后“安装后”脚本在他们的机器上运行。打字是一种开发依赖,所以它不会被下载(我也不希望它是为他们准备的——他们不在X上开发)。他们也没有全局安装打字,所以他们安装的Y错误。

正确的解决方案是什么?我应该打字吗?或者,是否存在另一个npm生命周期脚本,该脚本仅在安装后运行,前提是未执行任何参数的“npm安装”?还是别的什么?

谢谢!


共1个答案

匿名用户

您不需要在运行时键入。它们仅由开发环境中的TypeScript使用。编译之后。ts。js,不再需要打字了。

所以,不,不要提交typings