为什么npm-remote-ls命令返回的结果比babel-loader包的Yarn install命令更多?

时间:2018-06-17 22:44:52

标签: node.js npm yarnpkg

我正在尝试下载npm依赖项以供离线使用。

当我运行npm-remote-ls时,我得到了数百个依赖项:

> npm-remote-ls --name babel-loader --flatten
[ 'babel-loader@7.1.4',
....
....
... 770 more items ]

当我使用Yarn获取文件时,我有18 * .tgz包

> yarn config set yarn-offline-mirror ~/repository
> yarn install
> ls -l ~/repository
total 124
babel-loader-7.1.4.tgz
find-cache-dir-1.0.0.tgz
mkdirp-0.5.1.tgz
loader-utils-1.1.0.tgz
commondir-1.0.1.tgz
minimist-0.0.8.tgz
pkg-dir-2.0.0.tgz
big.js-3.2.0.tgz
make-dir-1.3.0.tgz
find-up-2.1.0.tgz
emojis-list-2.1.0.tgz
pify-3.0.0.tgz
locate-path-2.0.0.tgz
p-locate-2.0.0.tgz
path-exists-3.0.0.tgz
p-limit-1.3.0.tgz
p-try-1.0.0.tgz
json5-0.5.1.tgz

知道为什么Yarn会缓存这么少的包吗?

我正在使用Yarn 1.7.0,npm 3.10.10和Node v6.14.3

谢谢, 的Eyal

1 个答案:

答案 0 :(得分:0)

npm install命令将安装package.json文件中的依赖项,并允许您添加新的软件包。 yarn install仅按此顺序安装yarn.lockpackage.json中列出的依赖项。

有关更多信息,请参见此Yarn vs npm: CLI Differences