来自 软件资讯 2019-12-18 16:00 的文章
当前位置: 威尼斯国际官方网站 > 软件资讯 > 正文

学学笔记整理,npm模块微型机入门

 

NPM 学习笔记收拾

阅读 550,2017年06月04日 发布,来源:blog.ihoey.com

 

什么是 NPM

npm 之于 Node ,就像 pip 之于 Python , gem 之于 Ruby , pear 之于 PHP 。

npm 是 Node 官方提供的包管理工科具,他后生可畏度成了 Node 包的科班发表平台,用于 Node 包的揭露、传播、正视调控。
npm 提供了命令行工具,令你能够一本万利地下载、安装、晋级、删除包,也能够令你当做开垦者发表并维护包。

 

干什么要利用 NPM

npm 是随同 Node 一同安装的包管理工科具,能减轻 Node 代码安插上的大队人马主题材料,不可胜举的情景有以下二种:

  • 允许客商从 npm 服务器下载外人编写的第三方包到本地利用。
  • 同意客商从 npm 服务器下载并安装别人编写的授命路程序到本地利用。
  • 同意客商将和煦编写的包或指令路程序上传到 npm 服务器供外人利用。

npm 的背后,是基于 CouchDB 的三个数据库,详细笔录了各种包的音讯,包罗小编、版本、正视、授权新闻等。它的贰个很关键的职能就是:将开辟者从麻烦的包管理专门的学业(版本、信任等)中解放出来,特别在乎于功用的开支。

 

怎么使用 NPM

什么是 NPM

npmNode 官方提供的包管理工具,他大器晚成度成了 Node 包的标准发布平台,用于 Node 包的发布、传播、依赖调整。
npm 提供了命令行工具,使您能够平价地下载、安装、升级、删除包,也足以让您作为开拓者公布并维护包。

安装

npm 不供给独自安装。在安装 Node 的时候,会有关一起安装 npm 。但是,Node 附带的 npm 大概不是风靡版本,最终用下边包车型客车吩咐,更新到最新版本。

1
$ sudo npm install npm@latest -g

设借使 Window 系统运用以下命令就可以:

1
npm install npm -g

约等于接收 npm 安装自个儿。之所以得以那样,是因为 npm 本身与 Node 的任何模块未有区分。

然后,运转下边包车型大巴吩咐,查看各个新闻。

1
2
3
4
5
6
7
8
9
10
11
# 查看 npm 命令列表
$ npm help
 
# 查看各个命令的简单用法
$ npm -l
 
# 查看 npm 的版本
$ npm -v
 
# 查看 npm 的配置
$ npm config list -l

缘何要选用 NPM

npm 是随同 Node 一同安装的包管理工科具,能肃清 Node 代码安顿上的许多难点,何足为奇的场景有以下三种:

  • 允许顾客从 npm 服务器下载外人编写的第三方包到地点利用。
  • 同意客商从 npm 服务器下载并安装外人编写的通令路程序到地面利用。
  • 同意顾客将本身编排的包或指令路程序上传到 npm 服务器供外人选择。

npm 的背后,是基于 CouchDB 的一个数据库,详细记录了种种包的消息,包罗我、版本、依赖、授权信息等。它的一个很要紧的功效即是:将开荒者从麻烦的包管理专门的学业(版本、信任等)中解放出来,越来越小心于功效的付出。

使用

何以利用 NPM

npm init

npm init 用来开首化生成二个新的 package.json 文件。它会向顾客咨询大器晚成层层难点,假让你认为不用校订暗中同意配置,一路回车就足以了。
例如运用了 -f(代表force)、-y(代表yes),则跳过咨询阶段,直接生成一个新的 package.json 文件。

1
$ npm init -y

安装

npm 不必要单独安装。在装置 Node 的时候,会相关一同安装 npm 。但是,Node 附带的 npm 可能不是风靡版本,最终用上边包车型客车通令,更新到新型版本。

1
$ sudo npm install npm@latest -g

假如是 Window 系统应用以下命令就能够:

1
npm install npm -g

也正是应用 npm 安装自身。之所以能够那样,是因为 npm 本身与 Node 的别的模块未有区分。

然后,运维上边包车型大巴指令,查看各样新闻。

1
2
3
4
5
6
7
8
9
10
11
# 查看 npm 命令列表
$ npm help
 
# 查看各个命令的简单用法
$ npm -l
 
# 查看 npm 的版本
$ npm -v
 
# 查看 npm 的配置
$ npm config list -l

npm set

npm set 用来安装景况变量

1
2
3
4
$ npm set init-author-name 'Your name'
$ npm set init-author-email 'Your email'
$ npm set init-author-url 'http://yourdomain.com'
$ npm set init-license 'MIT'

地方命令等于为 npm init 设置了默许值,未来实行 npm init 的时候,package.json的我姓名、邮件、主页、许可证字段就能够自动写入预设的值。这么些音信会存放在客商主目录的 ~/.npmrc文件,使得用户不用各样连串都输入。假如某些项目有差别的安装,能够针对该项目运作 npm config

使用

npm info

npm info 命令能够查看种种模块的绘身绘色消息。比方,查看 underscore 模块的音讯。

1
$ npm info underscore

上面命令归来三个 JavaScript 对象,包含了 underscore 模块的详细音讯。那些目的的每一种成员,都得以直接从 info 命令查询。

1
2
3
4
5
$ npm info underscore description
 
$ npm info underscore homepage
 
$ npm info underscore version

npm init

npm init 用来领头化生成叁个新的 package.json 文件。它会向客商咨询一文山会海主题材料,要是你认为毫无校正暗中同意配置,一路回车就足以了。
假设运用了 -f(代表force)、-y(代表yes),则跳过咨询阶段,间接生成多少个新的 package.json 文件。

1
$ npm init -y

npm search

npm search 命令用于寻找 npm 饭店,它背后能够跟字符串,也能够跟正则表明式。

1
$ npm search <搜索词>

npm set

npm set 用来安装情况变量

1
2
3
4
$ npm set init-author-name 'Your name'
$ npm set init-author-email 'Your email'
$ npm set init-author-url 'http://yourdomain.com'
$ npm set init-license 'MIT'

下边命令等于为 npm init 设置了私下认可值,以往履行 npm init 的时候,package.json的作者姓名、邮件、主页、许可证字段就能够活动写入预设的值。这一个音信会贮存在顾客主目录的 ~/.npmrc文件,使得客商毫无种种门类都输入。假如某些项目有两样的装置,能够针对该品种周转 npm config

npm list

npm list 命令以树形布局列出当前项目安装的具备模块,以至它们依据的模块。

1
2
3
4
5
6
7
$ npm list
 
# 加上 global 参数,会列出全局安装的模块
$ npm list -global
 
# npm list 命令也可以列出单个模块
$ npm list underscore

npm info

npm info 命令能够查阅各种模块的求实音信。比方,查看 underscore 模块的新闻。

1
$ npm info underscore

地点命令归来几个 JavaScript 对象,包含了 underscore 模块的详细新闻。那一个目的的种种成员,都足以一向从 info 命令查询。

1
2
3
4
5
$ npm info underscore description
 
$ npm info underscore homepage
 
$ npm info underscore version

npm install

使用 npm 安装包的通令格式为:npm [install/i] [package_name]

npm search

npm search 命令用于搜索 npm 旅馆,它背后能够跟字符串,也足以跟正则表达式。

1
$ npm search <搜索词>

本地形式和全局形式

npm 在暗中认可情状下会从 NPM 搜索或下载包,将包安装到当前目录的 node_modules 子目录下。

倘诺您熟识 Ruby 的 gem 或者 Python 的 pip ,你会开采 npm 与它们的表现区别, gem 或 pip 总是以大局格局安装,使包能够供全部的次第选择,而 npm 暗许会把包安装到当前目录下。那展现了 npm 不一致的构思医学。若是把包安装到全局,能够提供程序的再一次使用程度,制止同风华正茂的源委的多分别本,但坏处是麻烦管理分歧的版本信任。借使把包安装到当前目录,或许说本地,则不会有例外程序依赖分歧版本的包的冲突难题,同期还缓和了包小编的 API 包容性压力,但劣点则是同三个包大概会被安装许多次。

大家在动用 supervisor 的时候利用了 npm install -g supervisor 命令,便是以大局方式安装 supervisor

那边注意一点的正是, supervisor 必得安装到全局,借令你不设置到全局,错误命令会提醒您安装到全局。若是不想安装到暗许的全局,也得以自身改善全局路线到当下路线 npm config set prefix "路径" 安装完之后就足以用 supervisor 来运营服务了。
supervisor 能够帮助您兑现那个功用,它会监视你对代码的驱动,并机关重启 Node 。

诚如的话,全局安装只适用于工具模块,比如 eslint 和 gulp 。关于使用全局形式,许多时候并非因为众多顺序都有希望用到了它,为了减小多种别本而接收全局情势,而是因为 本地形式不会注册 PATH 境况变量
“本地安装”指的是将三个模块下载到当前项目标 node_modules 子目录,然后唯有在项目目录之中,技术调用那个模块。

本土方式和大局形式的特征如下:

模式 可通过 require 使用 注册 PATH
本地模式
全局模式
1
2
3
4
5
6
# 本地安装
$ npm install <package name>
 
# 全局安装
$ sudo npm install -global <package name>
$ sudo npm install -g <package name>

npm install 也支撑间接输入 Github 代码库地址。

1
2
$ npm install git://github.com/package/path.git
$ npm install git://github.com/package/path.git#0.1.0

设置以前,npm install 会先反省,node_modules 目录之中是或不是已经存在钦定模块。要是存在,就不再重新安装了,尽管长途货仓已经有了贰个新本子,也是如此。

万大器晚成您期待,八个模块不管是还是不是安装过, npm 都要压迫重新安装,能够应用 -f 或 --force 参数。

1
$ npm install <packageName> --force

npm list

npm list 命令以树形布局列出当前项目安装的富有模块,甚至它们依靠的模块。

1
2
3
4
5
6
7
$ npm list
 
# 加上 global 参数,会列出全局安装的模块
$ npm list -global
 
# npm list 命令也可以列出单个模块
$ npm list underscore

设置不一样版本

install 命令总是安装模块的风行版本,借使要设置模块的一定版本,能够在模块名背后加上 @ 和版本号。

1
2
3
$ npm install sax@latest
$ npm install sax@0.1.1
$ npm install sax@">=0.1.0 <0.2.0"

install 命令可以应用差别参数,钦命所设置的模块归属哪后生可畏种特性的信任性关系,即出今后 packages.json 文件的哪生机勃勃项中。

–save:模块名帅被增加到 dependencies,能够简化为参数-S。
–save-dev:模块大将被增添到 devDependencies,能够简化为参数-D。

1
2
3
4
5
$ npm install sax --save
$ npm install node-tap --save-dev
# 或者
$ npm install sax -S
$ npm install node-tap -D

本文由威尼斯国际官方网站发布于软件资讯,转载请注明出处:学学笔记整理,npm模块微型机入门

关键词: