npm是一个node包管理和分发工具,已经成为了非官方的发布node模块(包)的标准。有了npm,可以很快的找到特定服务要使用的包,进行下载、安装以及管理已经安装的包。npm 从5.2版开始,增加了 npx 命令。请访问:npx使用教程

1、npm install moduleNames:安装Node模块

安装完毕后会产生一个node_modules目录,其目录下就是安装的各个node模块。

node的安装分为全局模式和本地模式。
一般情况下会以本地模式运行(可以理解为当前项目运行),包会被安装到和你的应用程序代码的本地node_modules目录下,只能当前项目使用。
在全局模式下,Node包会被安装到当前电脑Node的安装目录下的node_modules下,在当前电脑任何目录都可以使用。

全局安装命令为 npm install -g moduleName 
获知使用 npm set global=true 来设定安装模式,不要尝试这个命令,(如果尝试了的话使用npm config ls来看一下global的设置以及文件,然后找到.npmrc这个文件的路径,删掉这个文件或者用vim编辑里面的global=true为false就行了。需要找.npmrc的。一个是全局配置,一个是用户配置。也就是userconfig对应的路径 一般是/Users/[你的用户]/.npmrc), npm get global 可以查看当前使用的安装模式。

示例:

npm install express 

默认会安装express的最新版本,不会修改package.json之后运行npm install命令时,不会自动安装express模块

npm install express@3.0.

也可以通过在后面加版本号的方式安装指定版本

npm view express versions

可以查看express所以可以安装的版本

npm install <name> -g 

将包安装到全局环境中

但是代码中,直接通过require()的方式是没有办法调用全局安装的包的。全局的安装是供命令行使用的,就好像全局安装了vmarket后,就可以在命令行中直接运行vm命令

npm install <name> --save

安装的同时,将信息写入package.json的dependencies属性下,项目路径中如果有package.json文件时,直接使用npm install方法就可以根据dependencies(依赖项)配置安装所有的依赖包,这样代码提交到github时,就不用提交node_modules这个文件夹了。

之后运行npm install –production或者注明NODE_ENV变量值为production时,会自动安装msbuild到node_modules目录中

npm install <name> --save-dev

会把模块安装到node_modules目录中,在package.json的devDependencies(开发依赖项)属性下添加这个模块,之后运行npm install命令时,会自动安装这个模块到node_modules目录中,之后运行npm install –production或者注明NODE_ENV变量值为production时,不会自动安装X到node_modules目录中

devDependencies 节点下的模块是我们在开发时需要用的,比如项目中使用的 gulp ,压缩css、js的模块。这些模块在我们的项目部署后是不需要的,所以我们可以使用 -save-dev 的形式安装。像 express 这些模块是项目运行必备的,应该安装在 dependencies 节点下,所以我们应该使用 -save 的形式安装。

2、 npm view moduleNames :查看node模块的package.json文件夹
注意事项:如果想要查看package.json文件夹下某个标签的内容,可以使用 npm view moduleName labelName

3、 npm list :查看当前目录下已安装的node包
注意事项:Node模块搜索是从代码执行的当前目录开始的,搜索结果取决于当前使用的目录中的node_modules下的内容。 npm list parseable=true 可以目录的形式来展现当前安装的所有node包

4、 npm help :查看帮助命令

5、 npm view moudleName dependencies :查看包的依赖关系

6、 npm view moduleName repository.url :查看包的源文件地址

7、 npm view moduleName engines :查看包所依赖的Node的版本

8、 npm help folders :查看npm使用的所有文件夹

9、 npm rebuild moduleName :用于更改包内容后进行重建

10、 npm outdated :检查包是否已经过时,此命令会列出所有已经过时的包,可以及时进行包的更新

11、 npm update moduleName :更新node模块

12、 npm uninstall moudleName :卸载node模块

13、一个npm包是包含了package.json的文件夹,package.json描述了这个文件夹的结构。访问npm的json文件夹的方法如下:
 npm help json  此命令会以默认的方式打开一个网页,如果更改了默认打开程序则可能不会以网页的形式打开。

14、 npm search packageName :发布一个npm包的时候,需要检验某个包名是否已存在

15、 npm init :会引导你创建一个package.json文件,包括名称、版本、作者这些信息等,

npm init -y 快速全部以默认的方式生成一个package.json ,-y是-yes的缩写

16、 npm root :查看当前包的安装路径
 npm root -g :查看全局的包的安装路径

17、 npm -v :查看npm安装的版本

18、 npm config ls  : 查看全局安装路径

npm 基础命令的更多相关文章

  1. 【原】npm 常用命令详解

    今年上半年在学习gulp的使用,对npm的掌握是必不可少的,经常到npm官网查询文档让我感到不爽,还不如整理了一些常用的命令到自己博客上,于是根据自己的理解简单翻译过来,终于有点输出,想学习npm这块 ...

  2. npm常用命令小结

    目录(更新于2016.09.23): 1.认识和使用NPM 2.npm包安装模式 3.npm包管理(package的安装.卸载.升级.查看.搜索.发布,其他等) npm install [-g] 本地 ...

  3. npm常用命令解析

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

  4. npm 常用命令详解[转]

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

  5. npm 常用命令详解

    本文以Windows平台上做测试,以gulp为示例做教程,出自作者白树,转载请声明出处! 目录 npm是什么 npm install 安装模块 npm uninstall 卸载模块 npm updat ...

  6. npm常用命令学习(npm install -D,semver版本规范, npm进行版本管理的最佳实践用法)

    什么是npm npm有两层含义.一层含义是Node的开放式模块登记和管理系统,网址为npmjs.org.另一层含义是Node默认的模块管理器,是一个命令行下的软件,用来安装和管理Node模块. npm ...

  7. npm 常用命令详解(转载)

    学习gulp的使用时,对npm的掌握是必不可少的,经常到npm官网查询文档让我感到不爽,还不如整理了一些常用的命令博客上,于是根据自己的理解简单翻译过来,终于有点输出,想学习npm这块的朋友不可错过这 ...

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

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

  9. Node.js npm基础安装配置&创建第一个VUE项目

    使用之前,我们先来明白这几个东西是用来干什么的. node.js: 一种javascript的运行环境,能够使得javascript脱离浏览器运行.Node.js的出现,使得前后端使用同一种语言,统一 ...

随机推荐

  1. CentOS与Ubuntu的区别

    学习博客:https://www.cnblogs.com/lirongzheng/p/8250511.html 更多Ubuntu相关信息见Ubuntu 专题页面 http://www.linuxidc ...

  2. OptaPlanner 7.32.0.Final版本彩蛋 - SolverManager之批量求解

    上一篇介绍了OptaPlanner 7.32.0.Final版本中的SolverManager接口可以实现异步求解功能.本篇将继续介绍SolverManager的另一大特性 - 批量求解. 适用场景 ...

  3. C#设计模式学习笔记:(9)组合模式

    本笔记摘抄自:https://www.cnblogs.com/PatrickLiu/p/7743118.html,记录一下学习过程以备后续查用. 一.引言 今天我们要讲结构型设计模式的第四个模式--组 ...

  4. 00.ES6简介

    ES6 简介 ECMAScript 和 JavaScript 的关系 JavaScript是由ECMAScript组织维护的,ES6的名字就取自ECMAScript中的E和S,6的意思是已经发布到第6 ...

  5. linux 命令行下设置代理

    当linux 代理软件设置好后,我们需要设置命令行代理的连接方式,这样在命令行中的软件才能使用: 设置http/https代理: export https_proxy="127.0.0.1: ...

  6. jmeter脚本调试过程

    1.添加监听器:查看结果树,再回放脚本 2.权限验证,例如:cookies a.谷歌浏览器F12获取session

  7. C#中StreamReader类读取文件使用示例

    C#中StreamReader类读取文件使用示例 1.需要导入的命名空间是:System.IO; 2.操作的是字符,所以打开的是文本文件. 常用属性:   CurrentEncoding:对象正在使用 ...

  8. gradle与android studio 关系及gradle配置

    前言 我们一般开发android 使用android studio ,android studio 安装的时候,会帮我们做两件事,配置好自己的jdk. 实际上,使用的其实不是我们在path中配置的jd ...

  9. C# 二进制 十进制 十六进制 之间的转换

    ; Console.WriteLine(a.ToString("X")); //10进制转16进制 Console.WriteLine(Convert.ToString(a, )) ...

  10. 如何在 vue 中添加权限控制管理?---vue中文社区

    前言 在一个项目中,一些功能会涉及到重要的数据管理,为了确保数据的安全,我们会在项目中加入权限来限制每个用户的操作.作为前端,我们要做的是配合后端给到的权限数据,做页面上的各种各样的限制. 需求 因为 ...