如何在当前目录中安装npm模块?

时间:2016-02-16 09:59:38

标签: node.js npm npm-install

我正在尝试将express安装到我当前的“目录”中 但是节点全局安装,我不明白,我怎么能告诉节点将它安装在我当前的目录中。

3 个答案:

答案 0 :(得分:1)

当我还是一个终端菜鸟时,我回答了这个问题。 解决方案很简单:

cd(使用命令行导航)到要安装模块的目录,然后它应该可以正常工作。首先ctx.move(to: CGPoint(x: rect.width / 2, y: 0)) ctx.addLine(to: CGPoint(x: rect.width, y: rect.height / 2)) ctx.addLine(to: CGPoint(x: rect.width / 2 , y: rect.height)) ctx.addLine(to: CGPoint(x: 0, y: rect.height / 2)) 是个好主意。

答案 1 :(得分:0)

即使没有指定“ -g”全局标志,在项目目录中安装节点模块也遇到类似的问题。在Linux上,我在当前目录中安装的所有软件包最终都会安装到〜/ node_modules(即/ home / user / node_modules)中。

原因和解决方法在npm install module in current directory的线程中进行了说明。简短地说,npm在目录

中寻找一个node_modules子目录。

npm安装

被调用。如果找不到,npm会继续向上移动,搜索该目录的祖先,直到找到node_modules。假设Linux系统在当前用户主目录的最上层(即/ home / user)中找不到,它将在当前目录中创建node_modules,这是必需的行为。但是我已经有一个〜/ node_modules目录,不允许发生这种情况。

解决方法是先运行

npm初始化

在当前目录中的

,它以交互方式创建一个package.json文件,该文件告诉npm我们正在该目录中创建一个包,并且任何依赖项都必须位于该包的本地,因此需要node_modules /并因此需要节点包在本地安装。

在创建package,json之后,在该目录中运行的安装命令将在本地安装express。

答案 2 :(得分:-1)

使用

npm install packagename

这将在本地node_modules文件夹中安装依赖项。

在全局模式下(即,在命令后附加-g或--global),它将当前包上下文(即当前工作目录)安装为全局包。

因此,默认安装位置是本地目录,您需要指定-g或--global以全局安装模块。

查看官方文档了解更多信息:https://docs.npmjs.com/cli/install