最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Node.js打包管理工具NPM用法

 更新時(shí)間:2022年04月29日 09:55:08   作者:農(nóng)碼一生  
這篇文章介紹了Node.js打包管理工具NPM的用法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

一、NPM使用介紹

NPM是隨同NodeJS一起安裝的包管理工具,能解決NodeJS代碼部署上的很多問(wèn)題,常見(jiàn)的使用場(chǎng)景有以下幾種:

(1)允許用戶(hù)從NPM服務(wù)器下載別人編寫(xiě)的第三方包到本地使用。

(2)允許用戶(hù)從NPM服務(wù)器下載并安裝別人編寫(xiě)的命令行程序到本地使用。

(3)允許用戶(hù)將自己編寫(xiě)的包或命令行程序上傳到NPM服務(wù)器供別人使用。

由于新版的nodejs已經(jīng)集成了npm,所以之前npm也一并安裝好了。同樣可以通過(guò)輸入 "npm -v" 來(lái)測(cè)試是否成功安裝。命令如下,出現(xiàn)版本提示表示安裝成功:

npm -v

如果你安裝的是舊版本的 npm,可以很容易得通過(guò) npm 命令來(lái)升級(jí),命令如下:

npm install npm -g

或淘寶鏡像

npm install -g cnpm --registry=https://registry.npm.taobao.org

二、NPM全局安裝和本地安裝

本地安裝:

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

? 【2】可以通過(guò) require() 來(lái)引入本地安裝的包。

全局安裝:

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

? 【2】可以直接在命令行里使用。

本地安裝與全局安裝命令:

npm install ModuleName           # 本地安裝
npm install ModuleName -g   	 # 全局安裝

三、npm安裝package.json

在nodejs安裝目錄下已經(jīng)存在package.json文件,所以不需要進(jìn)行全局安裝package.json,我們下面介紹本地安裝package.json文件。

package.json是一個(gè)描述和管理的文件,通過(guò)如下命令進(jìn)行安裝:

npm init

命令執(zhí)行后會(huì)提示輸入信息,全部使用默認(rèn)值直接回車(chē),最后提示 Is this OK(yes) ,此時(shí)輸入yes即可。

安裝成功后會(huì)創(chuàng)建package.json文件,文件屬性?xún)?nèi)容說(shuō)明如下:

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

四、npm安裝模塊

npm本地安裝模塊,需要先安裝package.json。

以web框架模塊 express為例,進(jìn)行express模塊的安裝,命令如下:

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

如果出現(xiàn)以下錯(cuò)誤:

npm err! Error: connect ECONNREFUSED 127.0.0.1:8087

解決辦法為:

$ npm config set proxy null

五、模塊的其他操作

在操作命令中,最后加上 -g 代表進(jìn)行全局操作。

查看模塊安裝信息:

npm list

查看某個(gè)模塊的版本號(hào):

npm list express

更新模塊:

npm update express

搜索模塊:

npm search express

卸載模塊:

npm uninstall express

卸載后,你可以到 /node_modules/ 目錄下查看包是否還存在,或者使用以下命令查看:

npm ls

六、版本號(hào)

使用NPM下載和發(fā)布代碼時(shí)都會(huì)接觸到版本號(hào)。NPM使用語(yǔ)義版本號(hào)來(lái)管理代碼,這里簡(jiǎn)單介紹一下。

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

(1)如果只是修復(fù)bug,需要更新Z位。

(2)如果是新增了功能,但是向下兼容,需要更新Y位。

(3)如果有大變動(dòng),向下不兼容,需要更新X位。

版本號(hào)有了這個(gè)保證后,在申明第三方包依賴(lài)時(shí),除了可依賴(lài)于一個(gè)固定版本號(hào)外,還可依賴(lài)于某個(gè)范圍的版本號(hào)。例如"argv": "0.0.x"表示依賴(lài)于0.0.x系列的最

新版argv。

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

七、npm常用命令

除了本章介紹的部分外,NPM還提供了很多功能,package.json里也有很多其它有用的字段。

除了可以在npmjs.org/doc/查看官方文檔外,這里再介紹一些NPM常用命令。

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

使用npm help <command>可查看某條命令的詳細(xì)幫助,例如npm help install。

在package.json所在目錄下使用npm install . -g可先在本地安裝當(dāng)前命令行程序,可用于發(fā)布前的本地測(cè)試。

使用npm update <package>可以把當(dāng)前目錄下node_modules子目錄里邊的對(duì)應(yīng)模塊更新至最新版本。

使用npm update <package> -g可以把全局安裝的對(duì)應(yīng)命令行程序更新至最新版。

使用npm cache clear可以清空NPM本地緩存,用于對(duì)付使用相同版本號(hào)發(fā)布新版本代碼的人。

使用npm unpublish <package>@<version>可以撤銷(xiāo)發(fā)布自己發(fā)布過(guò)的某個(gè)版本代碼。

八、使用淘寶的npm鏡像

大家都知道國(guó)內(nèi)直接使用 npm 的官方鏡像是非常慢的,這里推薦使用淘寶 NPM 鏡像。

淘寶 NPM 鏡像是一個(gè)完整 npmjs.org 鏡像,你可以用此代替官方版本(只讀),同步頻率目前為 10分鐘 一次以保證盡量與官方服務(wù)同步。

你可以使用淘寶定制的 cnpm (gzip 壓縮支持) 命令行工具代替默認(rèn)的 npm:

npm install -g cnpm --registry=https://registry.npm.taobao.org

這樣就可以使用 cnpm 命令來(lái)安裝模塊了:

cnpm install [name]

九、安裝報(bào)錯(cuò)

如果你遇到了使用 npm 安 裝node_modules 總是提示報(bào)錯(cuò):報(bào)錯(cuò): npm resource busy or locked.....。

可以先刪除以前安裝的 node_modules :

npm cache clean
npm install

到此這篇關(guān)于Node.js打包管理工具NPM用法的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Node.js 實(shí)現(xiàn)簡(jiǎn)單的接口服務(wù)器的實(shí)例代碼

    Node.js 實(shí)現(xiàn)簡(jiǎn)單的接口服務(wù)器的實(shí)例代碼

    這篇文章主要介紹了Node.js 實(shí)現(xiàn)簡(jiǎn)單的接口服務(wù)器的實(shí)例代碼,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2017-05-05
  • 一文詳解如何在IDEA中配置Node.js

    一文詳解如何在IDEA中配置Node.js

    idea中支持運(yùn)行很多種編程語(yǔ)言,只需要在電腦中安裝好對(duì)應(yīng)的語(yǔ)言環(huán)境,下面這篇文章主要給大家介紹了關(guān)于如何在IDEA中配置Node.js的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02
  • 詳解如何模擬實(shí)現(xiàn)node中的Events模塊(通俗易懂版)

    詳解如何模擬實(shí)現(xiàn)node中的Events模塊(通俗易懂版)

    這篇文章主要介紹了如何模擬實(shí)現(xiàn)node中的Events模塊(通俗易懂版),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • yarn?命令死循環(huán)問(wèn)題分析解決

    yarn?命令死循環(huán)問(wèn)題分析解決

    這篇文章主要為大家介紹了yarn?命令死循環(huán)問(wèn)題分析解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • 更新npm項(xiàng)目依賴(lài)的實(shí)現(xiàn)方法

    更新npm項(xiàng)目依賴(lài)的實(shí)現(xiàn)方法

    依賴(lài)管理是其中一個(gè)至關(guān)重要的環(huán)節(jié),本文主要介紹了更新npm項(xiàng)目依賴(lài)的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-06-06
  • 基于NodeJS的前后端分離的思考與實(shí)踐(五)多終端適配

    基于NodeJS的前后端分離的思考與實(shí)踐(五)多終端適配

    對(duì)比基于瀏覽器的響應(yīng)式設(shè)計(jì)方案,因?yàn)榻^大部分終端探測(cè)和渲染邏輯遷移到了服務(wù)端,所以在 NodeJS 層進(jìn)行適配無(wú)疑帶來(lái)了更好的性能和用戶(hù)體驗(yàn);另外,相對(duì)于一些所謂的「云適配」方案帶來(lái)的轉(zhuǎn)換質(zhì)量問(wèn)題,在基于前后端分離的「定制式」方案中也不會(huì)存在。
    2014-09-09
  • NodeJS測(cè)試框架mocha入門(mén)教程

    NodeJS測(cè)試框架mocha入門(mén)教程

    本文給大家簡(jiǎn)單介紹了NodeJS里最常用的測(cè)試框架--mocha的安裝以及簡(jiǎn)單的使用方法,支持直接在browser上跑Javascript代碼測(cè)試,這里推薦給大家
    2017-03-03
  • 使用async、enterproxy控制并發(fā)數(shù)量的方法詳解

    使用async、enterproxy控制并發(fā)數(shù)量的方法詳解

    并發(fā)相信對(duì)大家來(lái)說(shuō)都不陌生,這篇文章主要給大家介紹了關(guān)于使用async、enterproxy控制并發(fā)數(shù)量的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-01-01
  • 詳解基于Vue+Koa的pm2配置

    詳解基于Vue+Koa的pm2配置

    這篇文章主要介紹了詳解基于Vue+Koa的pm2配置,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-10-10
  • node.js學(xué)習(xí)之?dāng)嘌詀ssert的使用示例

    node.js學(xué)習(xí)之?dāng)嘌詀ssert的使用示例

    assert 模塊主要用于編寫(xiě)程序的單元測(cè)試時(shí)使用,通過(guò)斷言可以提早發(fā)現(xiàn)和排查出錯(cuò)誤。下面這篇文章主要給大家介紹了關(guān)于node.js學(xué)習(xí)之?dāng)嘌詀ssert的相關(guān)資料,需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-09-09

最新評(píng)論

嘉义市| 安新县| 阿克苏市| 阿勒泰市| 田阳县| 祁连县| 浑源县| 太康县| 连南| 萝北县| 水城县| 岳阳县| 蒙阴县| 洛川县| 平江县| 长岭县| 文昌市| 凌云县| 讷河市| 沙洋县| 缙云县| 商洛市| 昆明市| 武山县| 阳东县| 巨野县| 沂源县| 绥芬河市| 电白县| 隆化县| 巴彦淖尔市| 麻城市| 荣昌县| 肇庆市| 宝丰县| 合江县| 射洪县| 简阳市| 江永县| 南川市| 阳原县|