如何更改npm路径

时间:2016-06-02 10:47:37

标签: npm

我的所有npm包都可以使用,但是我的npm包列表显示为空。我确信这是一个路径的问题,但不知道如何解决它。

哪个gulp给了我>

[~] ruby-2.2.3 $ which gulp
/usr/local/bin/gulp

哪个npm给了我>

[~] ruby-2.2.3 $ which npm
/usr/local/bin/npm

npm list给了我>

[~] ruby-2.2.3 $ npm list
/Users/kimmo
└── (empty)

1 个答案:

答案 0 :(得分:2)

看起来您将使用本地安装的软件包混淆。 gulpnpm的路径看起来像全局安装位置。您在本地安装的软件包将位于项目根目录下的node_modules文件夹下。

您可以通过比较以下结果来确认:

  • npm ls -g --depth=0
  • npm ls --depth=0

第一个命令将显示全局安装的软件包。第二个将显示本地包。

在结果输出的顶部,每个都显示全局或本地安装所在的目录。

最后,--depth=0标志仅显示所需的包,而不显示这些包的依赖关系(以及这些包等)。我发现大多数时候,这就是我所关心的。如果您同意,可以使用npm config set depth 0或通过编辑主目录中的.npmrc文件轻松将其设为默认值。

原来如此!我的猜测是你用-g标志安装了gulp,但你没有在本地安装任何东西(没有标志,可以这么说)。这就是为什么which显示的内容和npm ls显示的内容之间存在差异。