javascript - 如何在本地应用程序目录中安装 nodejs 模块?

标签 javascript node.js express npm

我正在 frontendmasters.com 上学习 node.js 类(class)。在这个看起来至少有一两年历史的类(class)中,讲师创建了一个名为“express”的应用程序目录,cds 到其中,然后运行命令“npm install express”。根据他的说法,由于我没有指定“-g”选项(这会导致 npm 全局安装它),因此应该在 express 文件夹中创建一个 node_modules 目录。当他在笔记本电脑上运行命令时,就发生了这种情况。他说这样做是为了,例如,如果你有两个不同的应用程序需要不同版本的 express,你可以在每个应用程序的目录中运行不同的版本。这是完全有道理的。

但是,当我运行“npm install express”命令时,我发现 npm 创建了一个 $HOME/node_modules/express 目录,而不是在我的 express 项目目录下创建那个 node_modules 目录。当我在与 basic 相同的目录级别创建第二个应用程序 basic2 时,我发现我不需要重新运行“npm install express”命令,因为仍然可以通过 $HOME/node_modules 目录访问 express。现在这意味着 basic 和 basic2 这两个应用程序将使用相同版本的 express,这与讲师所说的相矛盾。

所以我的问题是,如何使用 npm 安装 express(或任何其他模块,就此而言),以便在本地应用程序目录中本地创建 node_modules 目录(即,基于每个应用程序)而不是在我的 $HOME 目录?自创建此视频以来,npm 似乎发生了一些变化。

最佳答案

为应用创建一个新文件夹

mkdir my-app
cd my-app

然后使用 npm init 创建一个 nodejs 应用程序,这将询问您几种信息,例如应用程序名称版本等...此命令将生成 package.json

之后,您可以运行命令 npm i --save express,这会将 express 添加到您应用的 package.json 中

关于javascript - 如何在本地应用程序目录中安装 nodejs 模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50547130/

相关文章:

Javascript丝带隐藏在隐形盒子后面

javascript - 是否可以执行 "if .. || if .."?

apache - 是什么让 Node.js 比 Apache 更具可扩展性?

javascript - Mongoose : Merging two documents that reference each other

javascript - HTML Canvas 枪功能

node.js - Node Docker Image支持node --harmony

javascript - 使用 AJAX Post 和 Node.js Express

javascript - EJS include is not a function 错误

javascript - 如何在 node-js 中从 UUID 返回字符串

javascript - for...in 与数组输出字符串而不是数字