Node.js环境搭建npm安装
Node.js環(huán)境搭建
什么使Node.js呢?我們知道JavaScript開始作為客戶端語言,但早已在瀏覽器端一統(tǒng)江湖,這時(shí),野心越來越大,它就想向服務(wù)器端拓展了,于是Node.js就是這樣的,我們可以使用JavaScript來編寫服務(wù)器端的語言了。
第一步:進(jìn)入官網(wǎng),然后直接點(diǎn)擊左邊的下載左邊的部分,因?yàn)槠涮崾?“Recommended For Most Users”。
第二步:下載得到的是msi文件,直接雙擊安裝,一路next即可安裝完成。
第三步:這時(shí),我們就可以在“開始”中找到最新添加了兩項(xiàng)內(nèi)容,可以創(chuàng)建快捷方式到桌面上方便使用。如圖:
第四步:安裝完成后,按下win+R ,然后輸入cmd后進(jìn)入dos窗口,直接輸入 node -v,這時(shí)我們可以看到你所安裝的版本號(hào),表示安裝成功,如下所示:
第五步:npm安裝。目前的NodeJS都是已經(jīng)集成了npm,所以無需再安裝。為確定npm被成功安裝,我們可以按照第四步的方法輸入 npm -v,這時(shí)同樣可以看到你所安裝的版本號(hào),如下所示:
顯然這里和第四步中的 v 都是version(版本)的意思。
?
那么什么是npm呢?
NPM是隨同NodeJS一起安裝的包管理工具,其全稱是Node Package Manager,即Node包管理工具,能解決NodeJS代碼部署上的很多問題,常見的使用場景有以下幾種:
更多關(guān)于npm知識(shí)請(qǐng)點(diǎn)擊這里
第六步:實(shí)際上到這里常規(guī)的node環(huán)境就已經(jīng)搭建完成了。這時(shí)我們就可以輸入console.log('hello world')了。?
方法一:我們可以先win+r,然后輸入cmd,進(jìn)入之后輸入node,最后輸入console.log('hello world')這時(shí)就可以成功地輸出了。
方法二: ??? 我們可以雙擊進(jìn)入這個(gè)環(huán)境之后,直接輸入console.log('hello world')。
方法三:?我們可以雙擊進(jìn)入這個(gè)環(huán)境之后,先輸入node進(jìn)入node環(huán)境,然后再輸入console.log('hello world'),即可成功輸出。
?
?
?
npm模塊安裝機(jī)制
1. npm install
使用該命令后會(huì)先檢查 node_modules 中是否含有該模塊,如果沒有,那么安裝,如果已經(jīng)存在,就不會(huì)安裝。?
如果不管有么有都希望安裝,那么我們可以使用 npm install <包名> --force 即強(qiáng)制安裝包。
?
2. npm update
即先檢查自身是否存在模塊或者遠(yuǎn)程的包是否比本地的新,滿足其一,就會(huì)重新安裝。
?
3. registry
npm update 是如何知道每個(gè)包的最新版本呢?
即npm模塊倉庫提供了一個(gè)查詢服務(wù),即registry, 查詢地址是:?https://registry.npmjs.org/? ,這個(gè)網(wǎng)址后面跟上模塊名,就會(huì)得到一個(gè) JSON 對(duì)象,里面是該模塊所有版本的信息。比如,訪問?https://registry.npmjs.org/react,就會(huì)看到 react 模塊所有版本的信息。
而我們通過下面的命令得到就是 https://registry.npmjs.org/react 的等價(jià)信息:
$ npm view react# npm view 的別名 $ npm info react $ npm show react $ npm v reactregistry 網(wǎng)址的模塊名后面,還可以跟上版本號(hào)或者標(biāo)簽,用來查詢某個(gè)具體版本的信息。比如, 訪問 https://registry.npmjs.org/react/v0.14.6 ,就可以看到 React 的 0.14.6 版。
返回的 JSON 對(duì)象里面有一個(gè) dist.tarball 屬性, 這個(gè)屬性值就是這個(gè)壓縮包的網(wǎng)址:
到這個(gè)網(wǎng)址下載壓縮包,在本地解壓,就可以得到模塊的源碼,通過npm install 和 npm update 命令,就是通過這種方式來安裝模塊的。
?
4. 緩存目錄
在registry下載之后,就會(huì)放在本地的緩存目錄,每次下載時(shí),都會(huì)先把ETag和本地緩存中的比較,如果在可以接受的范圍內(nèi),我們就直接用緩存中的,如果在不能接受的范圍內(nèi),那么就下載。
我們通過下面的命令可以來查詢緩存文件的目錄:
在我的緩存目錄下已經(jīng)存在了很多:
?
?
5. 模塊的安裝過程
node模塊的安裝過程如下:
注意,一個(gè)模塊安裝以后,本地其實(shí)保存了兩份。一份是~/.npm目錄下的壓縮包,另一份是node_modules目錄下解壓后的代碼。
但是,運(yùn)行npm install的時(shí)候,只會(huì)檢查node_modules目錄,而不會(huì)檢查~/.npm目錄。也就是說,如果一個(gè)模塊在~/.npm下有壓縮包,但是沒有安裝在node_modules目錄中,npm 依然會(huì)從遠(yuǎn)程倉庫下載一次新的壓縮包。
?
?
6. --cache-min 參數(shù)
為了解決這些問題,npm 提供了一個(gè)--cache-min參數(shù),用于從緩存目錄安裝模塊。
--cache-min參數(shù)指定一個(gè)時(shí)間(單位為分鐘),只有超過這個(gè)時(shí)間的模塊,才會(huì)從 registry 下載。
$ npm install --cache-min 9999999 <package-name>上面命令指定,只有超過999999分鐘的模塊,才從 registry 下載。實(shí)際上就是指定,所有模塊都從緩存安裝,這樣就大大加快了下載速度?! ?/p>
?
?
7. 離線安裝的解決方案
? ? ?有三種,第一:使用Registry代理。 第二: 使用 npm install替代。 第三: 使用node_modules作為緩存目錄。
?
?
?
?
?
?
結(jié)束
轉(zhuǎn)載于:https://www.cnblogs.com/zhuzhenwei918/p/6308977.html
總結(jié)
以上是生活随笔為你收集整理的Node.js环境搭建npm安装的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vue2.0 实现click点击当前li
- 下一篇: 第四代:大规模集成电路计算机