【问题标题】:Why the express module is not installing in its default directory e.g., npm\node_modules?为什么 express 模块没有安装在其默认目录中,例如 npm\node_modules?
【发布时间】:2017-08-23 14:36:55
【问题描述】:

我正在尝试使用以下命令安装 express 模块:

npm install --save express
npm install -g express
npm install -g express-generator

安装后,我希望在 nodejs\node_modules\npm\node_modules 中创建模块,但它正在其他地方安装和创建(在 C:\Users\$ SudoName\AppData\Roaming\npm\node_modules)。

因此,在运行项目节点时,无法在它自己的目录中找到 express 模块。

【问题讨论】:

    标签: javascript node.js node-modules


    【解决方案1】:

    让我们一步一步解释你的命令:

    $ npm install --save express
    

    --save 命令用于保存软件包以供分发。此命令将包保存在 package.json 文件的 dependencies 部分下。

    $ npm install -g express
    

    来自documentation:“在全局模式下(即,将 -g 或 --global 附加到命令中),它将当前包上下文(即当前工作目录)安装为全局包。”。

    在您的情况下:C:\Users\$SudoName\AppData\Roaming\npm\node_modules

    注意:您可以使用以下命令查看软件包的安装位置:

    $ npm list -g
    

    最后,

    $ npm install -g express-generator
    

    采用相同的方法。它安装在您的全局依赖项下。

    【讨论】:

    • nodejs\node_modules\npm\node_modules 是 npm 本身工作的目录 :)
    • @javiergarval,当您未指定 --global/-g 时,节点会在本地(即在您的工作目录中)安装模块。如果命令中包含全局,它将安装并将模块放入安装节点的目录中。如果我在同一页面上,请告诉我。
    • @AnubhavSrivastava 如果我们在全局范围内安装任何软件包,它将进入 npm/node_modules 文件夹中,这就是您所说的对吗?我的全局快速安装未存储在 npm 目录中。
    猜你喜欢
    • 1970-01-01
    • 2016-04-23
    • 2016-03-25
    • 1970-01-01
    • 1970-01-01
    • 2011-11-16
    • 1970-01-01
    • 1970-01-01
    • 2011-11-07
    相关资源
    最近更新 更多