• NPM 使用介绍


    NPM 使用介绍

    NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种:

    • 允许用户从NPM服务器下载别人编写的第三方包到本地使用。
    • 允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。
    • 允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。

    由于新版的nodejs已经集成了npm,所以之前npm也一并安装好了。同样可以通过输入 "npm -v" 来测试是否成功安装。命令如下,出现版本提示表示安装成功:

    $ npm -v
    2.3.0
    

    如果你安装的是旧版本的 npm,可以很容易得通过 npm 命令来升级,命令如下:

    $ sudo npm install npm -g
    /usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
    npm@2.14.2 /usr/local/lib/node_modules/npm
    

    如果是 Window 系统使用以下命令即可:

    npm install npm -g
    

    使用 npm 命令安装模块

    npm 安装 Node.js 模块语法格式如下:

    $ npm install <Module Name>
    

    以下实例,我们使用 npm 命令安装常用的 Node.js web框架模块 express:

    $ npm install express
    

    安装好之后,express 包就放在了工程目录下的 node_modules 目录中,因此在代码中只需要通过 require('express') 的方式就好,无需指定第三方包路径。

    var express = require('express');
    

    全局安装与本地安装

    npm 的包安装分为本地安装(local)、全局安装(global)两种,从敲的命令行来看,差别只是有没有-g而已,比如

    npm install express          # 本地安装
    npm install express -g   # 全局安装
    

    如果出现以下错误:

    npm err! Error: connect ECONNREFUSED 127.0.0.1:8087 
    

    解决办法为:

    $ npm config set proxy null

    本地安装

    • 1. 将安装包放在 ./node_modules 下(运行 npm 命令时所在的目录),如果没有 node_modules 目录,会在当前执行 npm 命令的目录下生成 node_modules 目录。
    • 2. 可以通过 require() 来引入本地安装的包。

    全局安装

    • 1. 将安装包放在 /usr/local 下或者你 node 的安装目录。
    • 2. 可以直接在命令行里使用。

    如果你希望具备两者功能,则需要在两个地方安装它或使用 npm link

    接下来我们使用全局方式安装 express

    $ npm install express -g

    安装过程输出如下内容,第一行输出了模块的版本号及安装位置。

    express@4.13.3 node_modules/express
    ├── escape-html@1.0.2
    ├── range-parser@1.0.2
    ├── merge-descriptors@1.0.0
    ├── array-flatten@1.1.1
    ├── cookie@0.1.3
    ├── utils-merge@1.0.0
    ├── parseurl@1.3.0
    ├── cookie-signature@1.0.6
    ├── methods@1.1.1
    ├── fresh@0.3.0
    ├── vary@1.0.1
    ├── path-to-regexp@0.1.7
    ├── content-type@1.0.1
    ├── etag@1.7.0
    ├── serve-static@1.10.0
    ├── content-disposition@0.5.0
    ├── depd@1.0.1
    ├── qs@4.0.0
    ├── finalhandler@0.4.0 (unpipe@1.0.0)
    ├── on-finished@2.3.0 (ee-first@1.1.1)
    ├── proxy-addr@1.0.8 (forwarded@0.1.0, ipaddr.js@1.0.1)
    ├── debug@2.2.0 (ms@0.7.1)
    ├── type-is@1.6.8 (media-typer@0.3.0, mime-types@2.1.6)
    ├── accepts@1.2.12 (negotiator@0.5.3, mime-types@2.1.6)
    └── send@0.13.0 (destroy@1.0.3, statuses@1.2.1, ms@0.7.1, mime@1.3.4, http-errors@1.3.1)
    

    你可以使用以下命令来查看所有全局安装的模块:

    $ npm ls -g

    NPM 常用命令

    • NPM提供了很多命令,例如installpublish,使用npm help可查看所有命令。

    • 使用npm help <command>可查看某条命令的详细帮助,例如npm help install

    • package.json所在目录下使用npm install . -g可先在本地安装当前命令行程序,可用于发布前的本地测试。

    • 使用npm update <package>可以把当前目录下node_modules子目录里边的对应模块更新至最新版本。

    • 使用npm update <package> -g可以把全局安装的对应命令行程序更新至最新版。

    • 使用npm cache clear可以清空NPM本地缓存,用于对付使用相同版本号发布新版本代码的人。

    • 使用npm unpublish <package>@<version>可以撤销发布自己发布过的某个版本代码。




  • 相关阅读:
    ReentrantLock的实现原理
    Dubbo服务治理
    AQS原理
    flink写es性能优化
    spring的事务机制
    星形模型和雪花模型的区别
    关于使用云服务器做广域网通讯测试的资料整理
    pycharm 远程连接
    日记 2022.04.20
    《时间简史》 初读后感
  • 原文地址:https://www.cnblogs.com/benpaodexiaopangzi/p/5848055.html
Copyright © 2020-2023  润新知