目錄 文:鐵樂(lè)貓 引子2018年6月1日的兒童節(jié),我在北京學(xué)習(xí)python。 何為node.js 和 npm
以上摘自百度百科,簡(jiǎn)單來(lái)說(shuō),Node.js很適合搭建輕量的服務(wù)器(應(yīng)用),所以它又被人稱為服務(wù)器語(yǔ)言,前端中的后端語(yǔ)言。 node翻譯過(guò)來(lái)是節(jié)點(diǎn)的意思,而node.js后面特地帶了.js,就表示它與JavaScript有莫大的關(guān)系。 npm則是包含在node.js里面的一個(gè)包管理工具,就如同linux中的yum倉(cāng)庫(kù),rpm包管理;如同python中的pip包管理工具一樣。 而這些包管理工具都是予以使用的人們方便,同時(shí)解決各種包依賴之間的關(guān)系的。 既然npm是包管理工具,那么它自己也和node.js分開(kāi)自成一個(gè)網(wǎng)站,在npm的網(wǎng)站上面,就如同github,其倉(cāng)庫(kù)中保管了N多的開(kāi)源項(xiàng)目,有世界上眾多開(kāi)發(fā)者提供的項(xiàng)目。我們只需要在npm的網(wǎng)站上搜索相關(guān)的就可以找到,然后在線上下載也行,直接在自己的項(xiàng)目中使用命令行安裝也行。 npm 由三個(gè)獨(dú)立的部分組成:
網(wǎng)站 是開(kāi)發(fā)者查找包(package)、設(shè)置參數(shù)以及管理 npm 使用體驗(yàn)的主要途徑。 注冊(cè)表 是一個(gè)巨大的數(shù)據(jù)庫(kù),保存了每個(gè)包(package)的信息。 CLI 通過(guò)命令行或終端運(yùn)行。開(kāi)發(fā)者通過(guò) CLI 與 npm 打交道。 怎么使用node.js和npm安裝node.js & npm官方下載安裝包鏈接: https:///en/download/ 其實(shí)安裝完node.js后就已經(jīng)將npm也安裝上了。不過(guò)若是想要單獨(dú)更新npm時(shí)怎么辦? npm init 初始化項(xiàng)目(創(chuàng)建node.js模塊)
語(yǔ)法: 在本地創(chuàng)建一個(gè)項(xiàng)目文件夾,例如我這次的例子目錄是GhostScoolScreatBase。 注意的是, 命令行中將會(huì)提示 在index.js文件中,添加一個(gè)函數(shù),作為
如圖: 如果想為作者(author)字段添加信息,可以使用以下格式(郵箱、網(wǎng)址都是選填的):
打開(kāi)生成的package.json文件,可以看到類似如下的:
Package.json 屬性說(shuō)明
npm install 下載安裝依賴包前面有提到初始化項(xiàng)目,可視為創(chuàng)建node.js模塊的時(shí)候,會(huì)生成package.json文件。 而我們的項(xiàng)目顯然會(huì)在途中用上很多模塊,這些模塊是不便全部上傳到github倉(cāng)庫(kù)供用戶下載的(github有限制倉(cāng)庫(kù)大小不能超過(guò)100M)。且用戶還需自己手動(dòng)安裝這些依賴包也容易出錯(cuò)。 為此,npm提供了很大的便利,比如這次的項(xiàng)目,我們會(huì)用上jquery。
回到實(shí)例,這時(shí)項(xiàng)目下自動(dòng)會(huì)生成一個(gè)node_modules,并且node_modules文件下有jquery包,另外在package.json文件中也會(huì)有當(dāng)前記錄:
同理,你在npm中下載別人發(fā)布的項(xiàng)目或模塊后,也需要 本地安裝和全局安裝區(qū)別
如果你希望具備兩者功能,則需要在兩個(gè)地方安裝它或使用 npm link。 補(bǔ)充-模塊操作卸載模塊我們可以使用以下命令來(lái)卸載 Node.js 模塊。
卸載后,你可以到 /node_modules/ 目錄下查看包是否還存在,或者使用以下命令查看:
更新模塊我們可以使用以下命令更新模塊:
搜索模塊使用以下來(lái)搜索模塊:
創(chuàng)建模塊和發(fā)布模塊創(chuàng)建模塊使用的命令和步驟在前面 使用以下命令在 npm 資源庫(kù)中注冊(cè)用戶(使用郵箱注冊(cè)):
用以下命令來(lái)發(fā)布模塊:
如果你以上的步驟都操作正確,你就可以跟其他模塊一樣使用 npm 來(lái)安裝自己發(fā)布的模塊。 版本號(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)按以下原則更新。
版本號(hào)有了這個(gè)保證后,在申明第三方包依賴時(shí),除了可依賴于一個(gè)固定版本號(hào)外,還可依賴于某個(gè)范圍的版本號(hào)。例如"argv": "0.0.x"表示依賴于0.0.x系列的最新版argv。 NPM支持的所有版本號(hào)范圍指定方式可以查看官方文檔。 使用淘寶 NPM 鏡像大家都知道國(guó)內(nèi)直接使用 npm 的官方鏡像是非常慢的,這里推薦使用淘寶 NPM 鏡像。 淘寶 NPM 鏡像是一個(gè)完整 鏡像,可以用此代替官方版本(只讀),同步頻率目前為 10分鐘一次,以保證盡量與官方服務(wù)同步。 使用淘寶定制的 cnpm (gzip 壓縮支持) 命令行工具代替默認(rèn)的 npm:
這樣就可以使用 cnpm 命令來(lái)安裝模塊了:
|
|
來(lái)自: instl > 《前端架構(gòu)》