【发布时间】:2018-06-02 05:25:32
【问题描述】:
所以我正在将一个包发布到 npm。它基本上只是一个简单的模块,可以让用户进行 Ajax 调用,并且可以通过多种方式进行配置。
我已阅读到在本地测试安装并尝试过是个好主意。我已经通过“npm pack”命令打包了包,切换到另一个目录,然后尝试通过“npm install path-to-file-that-was-just-created.tgz”安装包。 到目前为止一切正常,我有一个 node_modules 文件夹,其中包含我的捆绑代码。
然而,它也安装了我在实际模块的 package.json 中列为 devDependencies 的所有依赖项,即使只需要捆绑的文件并且没有定义其他依赖项。 我尝试更新 npm-shrinkwrap.json,并检查每个依赖项的 dev 属性是否标记为 true。
目标实际上是让用户安装这个模块,然后没有安装依赖项,因为他们不需要 babel 或 mocha 来运行模块。 如何从包装中排除这些? 谢谢!
【问题讨论】:
-
我不熟悉
npm pack,但是如果你正常发布你的模块,当他们npm install your-module-name时,devDependencies默认不会安装,除非他们在@987654324中明确导航到你的模块@ 并运行npm install。 -
所以当我按照我测试它的方式在本地安装它时可能会发生这种情况。我得检查一下,谢谢!