0

我正在尝试对 npm update 进行简单测试,这是我的 package.json

{
  "name": "nodetest3",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "chalk": "^0.1.0"
  }
}

我可以看到粉笔版本

npm view chalk versions
[
  '0.1.0',        '0.1.1',        '0.2.0',
  '0.2.1',        '0.3.0',        '0.4.0',
  '0.5.0',        '0.5.1',        '1.0.0',
  '1.1.0',        '1.1.1',        '1.1.2',
  '1.1.3',        '2.0.0',        '2.0.1',
  '2.1.0',        '2.2.0',        '2.2.2',
  '2.3.0',        '2.3.1',        '2.3.2',
  '2.4.0',        '2.4.1',        '2.4.2',
  '3.0.0-beta.1', '3.0.0-beta.2', '3.0.0',
  '4.0.0',        '4.1.0'
]

在这一点上当我跑

npm update

我应该得到一个 chalk 0.5.1 的包版本,因为我在依赖项中使用了 ^,至少这是根据手册(如果我使用 ~ 更新到最新补丁,如果我使用 ^ 更新到最新的次要版本),但是我得到的是错误的 0.1.1 版本。我不明白的是,当我将依赖项更改为“^2.0.0”或“^1.0.0”并运行时

npm update chalk

或者

npm update

chalk 已更新为正确的 2.4.2 或 1.1.3 版本。有没有办法通过 npm update 将所有包同时更新到依赖项中设置的正确版本,或者这只是一个错误,或者可能是与 chalk 相关的东西?

4

0 回答 0