如何将Nodejs的模块依赖项升级到更新版本

时间:2015-09-08 06:11:31

标签: javascript node.js npm node-modules

我正在为我的项目使用react-cropper,其中包含cropper版本^0.10.0,而我需要cropper版本0.11.1的某些方法。所以我将它分配给我自己的GitHub存储库,并希望将其cropper升级到0.11.1。但我不知道该怎么做!

我是否必须再次构建此模块并推送到GitHub,然后通过package.json中的GitHub url安装它?

谢谢!

更新

我将react-claper克隆到本地,更新package.json,然后是npm install。它抛出错误错误:ENOENT,没有这样的文件或目录'dist / react-cropper.js'。然后我mkdir dist和npm安装成功。下一步怎么办?

更新2 在关注@Michelem后,我成功将cropper升级为0.11.1但是当我运行gulp时,它会抛出错误:can not find module 'react-cropper'这是否与此问题有关?

3 个答案:

答案 0 :(得分:0)

您不需要任何分支,只需使用以下内容更改package.json版本:~0.11(这将始终是最新的0.11.x版本)。

然后运行npm install

否则你也可以按原样保留package.json并运行npm update cropper但是你需要检查包的定义方式,如果是^0.10.0它应该更新为0.11.1。

您还可以check this了解^~的含义。

编辑:

如果您需要更改您不拥有的软件包的依赖项版本,则必须执行以下步骤:

  1. 分叉Github存储库(react-cropper)
  2. 更改repo中的package.json以匹配您需要的版本,例如更改为:

    "dependencies": {
       "cropper": "~0.11.0"
    },
    
  3. 保存文件并将其推送到分叉仓库
  4. 获取这样的提交网址:https://github.com/roadmanfong/react-cropper/commit/b3be6918af66b23cbc100d193cb0df853fd67586
  5. 使用commit更改tarball,以便获得如下网址:https://github.com/roadmanfong/react-cropper/tarball/b3be6918af66b23cbc100d193cb0df853fd67586
  6. 将所有togheter放入app app.json:

    "react-cropper": "https://github.com/roadmanfong/react-cropper/tarball/b3be6918af66b23cbc100d193cb0df853fd67586",
    
  7. 运行npm install
  8. 这会更新你的应用程序中的react-cropper包,从你的Github仓库中获取它,这样它就会有cropper 0.11.1作为依赖。

答案 1 :(得分:0)

npm update cropper --save

在package.json

中为您保存版本

答案 2 :(得分:0)

要更新过时的裁剪程序包+相应地更改package.json,请使用

npm install cropper@0.11.1 --save.