欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Node.js管理工具npm的具體使用

 更新時(shí)間:2023年12月11日 15:45:34   作者:陽(yáng)光_你好  
NPM是隨同NodeJS一起安裝的包管理工具,允許用戶從NPM服務(wù)器下載別人編寫的第三方包到本地使用,本文主要介紹了Node.js管理工具npm的具體使用,感興趣的可以了解一下

1.npm用途說明

我們?cè)趯憂ode.js項(xiàng)目的時(shí)候npm工具是避免不的,那么我們?nèi)绾问褂迷摴ぞ呷ス芾戆木吣兀渴紫任覀兿冉榻Bnpm工具的幾種用途:

  • 可以從npm服務(wù)器下載別人編寫的第三方包到本地使用。
  • 可以從npm服務(wù)器下載并安裝別人編寫的命令行程序到本地使用。
  • 可以將自己編寫的包或命令行程序上傳到npm服務(wù)器供別人使用。

2.npm的安裝及使用

2.1 npm安裝

node.js很早的版本就已經(jīng)集成了npm工具,如果你安裝好了node.js,那就不用單獨(dú)安裝npm。我們通過"npm -v”來查看以下版本:

$ npm -v
6.13.4

如果你想使用新的npm版本,可以使用如下命令來更新:

sudo npm install npm -g # Linux平臺(tái)

npm install npm -g # windows平臺(tái)

你也可以使用國(guó)內(nèi)淘寶鏡像源更新或者下載包:

npm install -g cnpm --registry=https://registry.npmmirror.com

2.2 npm使用

如果我們要使用npm 命令安裝urllib,我們可以用下邊命令:

npm install urllib      # 本地安裝 
npm install usllib -g   # 全局安裝

2.2.1 本地安裝

將安裝包放在 ./node_modules 下(運(yùn)行 npm 命令時(shí)所在的目錄),如果沒有 node_modules 目錄,會(huì)在當(dāng)前執(zhí)行 npm 命令的目錄下生成 node_modules 目錄。

npm install urllib      # 本地安裝 

2.2.2 全局安裝

將安裝包放在 /usr/local 下或者你 node 的安裝目錄。

npm install usllib -g   # 全局安裝

2.2.3 模塊卸載

$ npm uninstall usllib

2.2.4 模塊更新

$ npm update usllib

2.2.5 模塊搜索

$ npm search usllib

2.2.6 模塊創(chuàng)建

創(chuàng)建模塊,package.json 文件是必不可少的。我們可以使用 NPM 生成 package.json 文件,生成的文件包含了基本的結(jié)果。

$ npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.

See `npm help json` for definitive documentation on these fields
and exactly what they do.

Use `npm install <pkg> --save` afterwards to install a package and
save it as a dependency in the package.json file.

Press ^C at any time to quit.
name: (node_modules) runoob                   # 模塊名
version: (1.0.0) 
description: Node.js 測(cè)試模塊(www.runoob.com)  # 描述
entry point: (index.js) 
test command: make test
git repository: https://github.com/runoob/runoob.git  # Github 地址
keywords: 
author: 
license: (ISC) 
About to write to ……/node_modules/package.json:      # 生成地址

{
  "name": "runoob",
  "version": "1.0.0",
  "description": "Node.js 測(cè)試模塊(www.runoob.com)",
  ……
}


Is this ok? (yes) yes

以上的信息,你需要根據(jù)你自己的情況輸入。在最后輸入 “yes” 后會(huì)生成 package.json 文件。

接下來我們可以使用以下命令在 npm 資源庫(kù)中注冊(cè)用戶(使用郵箱注冊(cè)):

$ npm adduser
Username: myname
Password:
Email: (this IS public) myname@email.com

接下來我們就用以下命令來發(fā)布模塊:

$ npm publish

如果你以上的步驟都操作正確,你就可以跟其他模塊一樣使用 npm 來安裝。

2.2.7 模塊創(chuàng)建

語(yǔ)義版本號(hào)分為X.Y.Z三位,分別代表主版本號(hào)、次版本號(hào)和補(bǔ)丁版本號(hào)。當(dāng)代碼變更時(shí),版本號(hào)按以下原則更新。

如果只是修復(fù)bug,需要更新Z位。
如果是新增了功能,但是向下兼容,需要更新Y位。
如果有大變動(dòng),向下不兼容,需要更新X位。
版本號(hào)有了這個(gè)保證后,在申明第三方包依賴時(shí),除了可依賴于一個(gè)固定版本號(hào)外,還可依賴于某個(gè)范圍的版本號(hào)。例如"argv": "0.0.x"表示依賴于0.0.x系列的最新版argv。

NPM支持的所有版本號(hào)范圍指定方式可以查看官方文檔。

2.3 查看安裝信息

可以使用以下命令來查看所有全局安裝的模塊:

$ npm list urllib #(在本地項(xiàng)目查看rullib)
root@ /home/kyland/webviz
└── (empty)

$ npm list urllib -g  #(在全局查看rullib)
/home/kyland/.nvm/versions/node/v10.19.0/lib
└─┬ cnpm@9.2.0
  ├─┬ npm-request@1.0.0
  │ └── urllib@2.41.0 
  ├─┬ npminstall@7.11.1
  │ └── urllib@3.19.3  deduped
  └── urllib@3.19.3 
$ npm list -g
.nvm/versions/node/v10.19.0/lib
├─┬ @angular/cli@17.0.1
│ ├─┬ @angular-devkit/architect@0.1700.1
│ │ ├── @angular-devkit/core@17.0.1 deduped
│ │ └─┬ rxjs@7.8.1
│ │   └── tslib@2.6.2
│ ├─┬ @angular-devkit/core@17.0.1
│ │ ├─┬ ajv@8.12.0
│ │ │ ├── fast-deep-equal@3.1.3
│ │ │ ├── json-schema-traverse@1.0.0
│ │ │ ├── require-from-string@2.0.2
│ │ │ └─┬ uri-js@4.4.1
│ │ │   └── punycode@2.3.1
│ │ ├─┬ ajv-formats@2.1.1
│ │ │ └── ajv@8.12.0 deduped
│ │ ├── jsonc-parser@3.2.0 deduped
│ │ ├── picomatch@3.0.1
│ │ ├── rxjs@7.8.1 deduped
│ │ └── source-map@0.7.4
...

2.4 package.json的使用

package.json 位于模塊的目錄下,用于定義包的屬性。接下來讓我們來看下 express 包的 package.json 文件,位于 node_modules/express/package.json 內(nèi)容:

{
  "name": "root",
  "private": true,
  "devDependencies": {
    "@babel/cli": "^7.1.5",
    "@babel/core": "^7.2.0",
    "@babel/plugin-proposal-class-properties": "^7.2.1",
    "@babel/plugin-proposal-nullish-coalescing-operator": "^7.7.4",
    "@babel/plugin-proposal-object-rest-spread": "^7.2.0",
  },
  "scripts": {
    "bootstrap": "npm install && lerna bootstrap --hoist \"{react,react-dom}\" -- --legacy-peer-deps",
  },
  "dependencies": {
    "dd-trace": "^2.2.0",
    "node-sass": "^4.14.1"
  }
}

package.json 屬性說明

  • name - 包名。
  • version - 包的版本號(hào)。
  • description - 包的描述。
  • homepage - 包的官網(wǎng) url 。
  • author - 包的作者姓名。
  • contributors - 包的其他貢獻(xiàn)者姓名。
  • dependencies - 依賴包列表。如果依賴包沒有安裝,npm 會(huì)自動(dòng)將依賴包安裝在 node_module 目錄下。
  • repository - 包代碼存放的地方的類型,可以是 git 或 svn,git 可在 Github 上。
  • main - main 字段指定了程序的主入口文件,require(‘moduleName’) 就會(huì)加載這個(gè)文件。這個(gè)字段的默認(rèn)值是模塊根目錄下面的 index.js。
  • keywords - 關(guān)鍵字

2.5 npm常用命令

  • npm help 可查看某條命令的詳細(xì)幫助,例如npm help install。
  • 在package.json所在目錄下使用npm install . -g可先在本地安裝當(dāng)前命令行程序,可用于發(fā)布前的本地測(cè)試。
  • npm update 可以把當(dāng)前目錄下node_modules子目錄里邊的對(duì)應(yīng)模塊更新至最新版本。
  • npm update -g可以把全局安裝的對(duì)應(yīng)命令行程序更新至最新版。
  • npm cache clear可以清空NPM本地緩存,用于對(duì)付使用相同版本號(hào)發(fā)布新版本代碼的人。
  • npm unpublish @可以撤銷發(fā)布自己發(fā)布過的某個(gè)版本代碼。

到此這篇關(guān)于Node.js管理工具npm的具體使用的文章就介紹到這了,更多相關(guān)Node.js npm內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • node.js中的buffer.length方法使用說明

    node.js中的buffer.length方法使用說明

    這篇文章主要介紹了node.js中的buffer.length方法使用說明,本文介紹了buffer.length的方法說明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • 使用Node.js實(shí)現(xiàn)GitHub登錄功能

    使用Node.js實(shí)現(xiàn)GitHub登錄功能

    這篇文章主要為大家詳細(xì)介紹了如何使用Node.js實(shí)現(xiàn)簡(jiǎn)單的GitHub登錄功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-04-04
  • 利用python分析access日志的方法

    利用python分析access日志的方法

    最近在自學(xué)python,光看是不行的,還是要多實(shí)操的。這就是一個(gè)寫給自己的小小工具。主要功能是,便利日志文件夾下的文件,根據(jù)設(shè)定的關(guān)鍵字查找是否有web攻擊行為。有需要的朋友們下面來一起看看吧。
    2016-10-10
  • NodeJS與HTML5相結(jié)合實(shí)現(xiàn)拖拽多個(gè)文件上傳到服務(wù)器的實(shí)現(xiàn)方法

    NodeJS與HTML5相結(jié)合實(shí)現(xiàn)拖拽多個(gè)文件上傳到服務(wù)器的實(shí)現(xiàn)方法

    這篇文章主要介紹了NodeJS與HTML5相結(jié)合實(shí)現(xiàn)拖拽多個(gè)文件上傳到服務(wù)器的實(shí)現(xiàn)方法的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-07-07
  • nodeJs鏈接Mysql做增刪改查的簡(jiǎn)單操作

    nodeJs鏈接Mysql做增刪改查的簡(jiǎn)單操作

    本篇文章主要介紹了nodeJs鏈接Mysql做增刪改查的簡(jiǎn)單操作,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-02-02
  • Node.js利用斷言模塊assert進(jìn)行單元測(cè)試的方法

    Node.js利用斷言模塊assert進(jìn)行單元測(cè)試的方法

    最近在用Node寫一個(gè)實(shí)時(shí)聊天小應(yīng)用,其中就用到了單元測(cè)試,所以死下面這篇文章主要給大家介紹了關(guān)于Node.js利用斷言模塊assert進(jìn)行單元測(cè)試的方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-09-09
  • 150行Node.js實(shí)現(xiàn)的dns代理工具

    150行Node.js實(shí)現(xiàn)的dns代理工具

    這篇文章主要介紹了150行Node.js實(shí)現(xiàn)的dns代理工具,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-08-08
  • Node.js模塊封裝及使用方法

    Node.js模塊封裝及使用方法

    這篇文章主要為大家詳細(xì)介紹了Node.js模塊封裝及使用方法,感興趣的朋友可以參考一下
    2016-03-03
  • 淺談Koa2框架利用CORS完成跨域ajax請(qǐng)求

    淺談Koa2框架利用CORS完成跨域ajax請(qǐng)求

    這篇文章主要介紹了淺談Koa2框架利用CORS完成跨域ajax請(qǐng)求,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-03-03
  • Node.js操作系統(tǒng)OS模塊用法分析

    Node.js操作系統(tǒng)OS模塊用法分析

    這篇文章主要介紹了Node.js操作系統(tǒng)OS模塊用法,結(jié)合實(shí)例形式分析了nodejs OS模塊常見函數(shù)功能及簡(jiǎn)單使用技巧,需要的朋友可以參考下
    2019-01-01

最新評(píng)論