所以我正在将包发布到npm。它基本上只是一个简单的模块,允许用户进行Ajax调用,并且可以通过几种方式进行配置。
我已经读过,在本地测试安装是个好主意并尝试过。我通过“npm pack”命令打包了包,转到另一个目录,然后尝试通过“npm install path-to-file-that-just-created.tgz”安装packge。 到目前为止一切正常,我有一个node_modules文件夹,其中包含我的捆绑代码。
但是,我已经安装了我在实际模块的package.json中列为devDependencies的所有依赖项,即使只需要捆绑文件而且没有定义其他依赖项。 我尝试更新npm-shrinkwrap.json,并检查每个依赖项是否将dev属性标记为true。
目标实际上是用户安装此模块,然后没有安装依赖项,因为它们不需要babel或mocha来运行模块。 如何从包装中排除这些? 谢谢!
答案 0 :(得分:3)
https://docs.npmjs.com/cli/install
使用--production标志来避免安装dev依赖项
对于已发布的模块,您不需要做任何事情,当用户安装您的库时,只会安装非开发人员依赖项