在使用nodejs的npm包管理工具中碰到过许多个坑,在网上查了很久才解决,现在加以总结.

  两种安装方式(本地安装,全局安装)

  1.全局安装(npm install -g moduleName/npm install ----global moduleName)

    全局安装,顾名思义是代表安装到全局环境里面,可通过以下命令查看全局安装路径   

    npm root -g
    npm prefix -g

  

    请注意,两种路径中,不同的是node_modules目录

    通过以下命令可以设置全局安装路径(没有node_modules,设置好后npm intall -g 会自动在你设置的目录下生成一个node_modules目录,你需要全局安装的模块会下载到里面),windows默认的全局安装路径为 C:\Users\xxx\AppData\Roaming\npm

npm config set prefix "your node global path"

    全局安装后可以在cmd命令窗口直接运行该组件包支持的命令,如下图全局安装后目录结构(如果报错不是内部或外部命令...,直接将全局安装路径添加到path环境变量即可)

    2.本地安装 npm install modulesName

      本地安装,是指在你命令行当前所在路径下安装./node_modules,本地安装后可以直接通过require()的方式引入项目中node_modules目录下的模块

  

    引入模块:在js代码中引入模块时,node.js默认会在NODE_PATH和目前js所在项目下的node_modules文件夹下去寻找模块,因此,如果只是全局安装,不能直接通过require()的方式去引用模块,需要手动解决包路径的配置问题,可将环境变量的NODE_PATH设置为E:\Program Files\nodejs\node_global\node_modules (npm root -g 所得路径)

    本地安装和全局安装的优缺点:

      首先,本地安装,那你只能在当前项目中引用,每个项目使用时都需要在当前项目重新安装一遍,全局安装可以在任何地方引用(前提是NODE_PATH正确),安装一次就可多次使用,但是有个问题,模块也是有版本的,全局安装的时候一个模块如果在多个项目中被使用,当全局包被升级更新的时候,就可能会影响到你的多个项目,其中的依赖关系会被破坏,所以本地安装有利于不同项目之间的独立性.

Nodejs中npm install 命令的问题的更多相关文章

  1. nodejs中npm常用命令

    npm install <name>安装nodejs的依赖包 例如npm install express 就会默认安装express的最新版本,也可以通过在后面加版本号的方式安装指定版本, ...

  2. (转)nodejs中npm常用命令

    npm install <name>安装nodejs的依赖包 例如npm install express 就会默认安装express的最新版本,也可以通过在后面加版本号的方式安装指定版本, ...

  3. nodeJS中npm常见的命令

    常用的nodeJS中npm的命令:npm主要是node包管理和发布的工具.npm常用的命令:1:npm install <name> //(下载包) 下载后的包放在当前路径下面 npm i ...

  4. nodeJs中npm详解

    npm 是 Node.js 的模块依赖管理工具.作为开发者使用的工具,主要解决开发 node.js 时会遇到的问题.如同 RubyGems 对于 Ruby 开发者和 Maven 对于 Java 开发者 ...

  5. Node.js中npm常用命令大全

    npm是什么 NPM的全称是Node Package Manager,是随同NodeJS一起安装的包管理和分发工具,它很方便让JavaScript开发者下载.安装.上传以及管理已经安装的包. npm ...

  6. npm install命令详解

    -S,–save 安装包信息将加到dependencies(生产阶段的依赖) npm install --save 或 npm install -S -D, –save-dev 安装包信息将加到dev ...

  7. npm install命令对package-lock.json文件自动做了一些额外的更新

    今天我使用 npm 命令给项目安装file-saver,通过git却发现package-lock.json中除了file-saver组件之外的其他组件的记录也被改了 npm为何会自动做这些更改呢,又如 ...

  8. npm中npm install 始终出错解决办法

    npm中npm install 始终出错解决办法 错误信息: C:\Windows\System32>npm install -g gulp npm ERR! Windows_NT 6.1.76 ...

  9. 关于 npm install 命令

    使用 `npm install` 命令安装模块时 ,有以下几种形式: 安装模块到项目 node_modules 目录下,不会将模块依赖写入 dependencies 或 devDependencies ...

随机推荐

  1. Python:笔记(6)——正则表达式

    Python:笔记(6)——正则表达式 re模块 re模块用于在字符串中执行基于正则表达式模式的匹配和替换. 使用原始字符串 正则表达式使用 \ 对特殊字符进行转义,比如,为了匹配字符串 ‘pytho ...

  2. 表单验证—js循环所有表单验证

    [封装为表单验证的专用js,所有表单页面都可以调用] 1.表单 <form id="regForm" method="post" action=" ...

  3. Bootstrap table前端分页(ssm版)

    说明bootstrap table可以前端分页,也可以后端sql用limit分页.前端分页下性能和意义都不大,故一般情况下不用这种,请看我的另一篇后端分页的博客源码下载地址:https://git.o ...

  4. ng-深度学习-课程笔记-9: 机器学习策略1(Week1)

    1 为什么要应用机器学习策略( Why is machine learning strategy ) 当你想优化一个问题的时候,通常可以有很多尝试(比如收集更多数据,增加迭代次数,改用adam,改变网 ...

  5. UnicodeDecodeError: 'ascii' codec can't decode byte 0xbb in position 51: ord

    1.问题描述:一个在Django框架下使用Python编写的定时更新项目,在Windows系统下测试无误,在Linux系统下测试,报如下错误: ascii codec can't decode byt ...

  6. Linux点亮一个灯

    一 文件及其驱动程序 1.解压linux 压缩包 使用命令: tar xzvf linux-3.0.8-20140925.tgz ( tar xvf ------.tar tar xzvf------ ...

  7. kali_常用软件记录

    可参考:http://www.lvzejun.cn/2015/03/31/ubuntu-software/ 录屏软件 http://www.kohaupt-online.de/hp/ http://l ...

  8. 分布式之zk的应用场景

    分布式应用系统中,经常会用到zk,比如dubbo注册中心,kafka分布式集群等都用到zk这一工具.除了这些用来做分布式集群外,zk还有那西应用场景事我们可以使用到该工具的呢?所以接下来就是我们要了解 ...

  9. notepad++下载32位,安装插件管理

    下载32位地址: https://notepad-plus-plus.org/download/v7.6.4.html 下载插件: 链接: https://pan.baidu.com/s/1tRSo4 ...

  10. sqlite的bool字段

    简直被坑死了, bool字段更新,只能用0或1,才是正确的更新. 否则select出来的字段是错的 本来用true和false更新的,更新之后,使用sqliteexpert查看,更新结果是对的. 但是 ...