前言
????????作為一名剛接觸前端的小白,想要通過文字記錄下自己在前端道路上學習到的知識祠够。一方面幫助自己能夠更好地理解并梳理記住自己學到的知識压汪;另一方面也希望自己記錄的東西能夠給一些需要的人提供一點點的幫助。如果哪兒說的不對古瓤,歡迎指正止剖!好啦,下面開始 ——史上最全的Node.js安裝教程落君。親測有效穿香,包學包會,童叟無欺绎速!
介紹
本文將會全面的介紹Node.js全家桶的安裝皮获,內(nèi)容包括:NVM安裝,Node.js安裝纹冤,NPM安裝洒宝,NRM安裝。
下面簡單介紹下我們準備安裝的都是什么東東:
一萌京、Node.js:?Node.js 是運行在服務(wù)端的 JavaScript雁歌,是一個基于Chrome JavaScript 運行時建立的一個平臺。簡單說知残,Node.js是JavaScript的運行環(huán)境(是運行環(huán)境靠瞎,而不是JS框架),這使得JavaScript可以成為與Java,PHP乏盐,Python等語言一樣佳窑,進行后臺服務(wù)端的開發(fā)。
特點:1. Node.js是JavaScript的運行平臺父能,所以前端不用再去學一門后臺語言了I翊铡(這里允許我皮一下^_^)
? ? ? ? ? ? 2. Node.js實質(zhì)上是對Google的V8引擎進行了封裝,所以得益于V8引擎的強悍編譯技術(shù)法竞,對JavaScript語言的編譯和執(zhí)行速度非嘲液瘢快,性能非常好岔霸。
? ? ? ? ? ? 3. 異步的事件驅(qū)動機制薛躬。就是指在持續(xù)的事務(wù)管理過程中,只跟隨當前時間點上出現(xiàn)的事件進行處理呆细,執(zhí)行相關(guān)任務(wù)型宝,防止事務(wù)的堆積。Node.js的設(shè)計思想是以事件驅(qū)動為核心絮爷,而事件驅(qū)動動過異步回調(diào)實現(xiàn)趴酣,這樣就可以充分的利用系統(tǒng)的資源去執(zhí)行任務(wù)而無需阻塞。Node.js通過內(nèi)部單線程高效地維護事件循環(huán)隊列坑夯,沒有多線程的資源占用和上下文切換岖寞。
? ? ? ? ? ? 4. 異步、非阻塞的I/O柜蜈。適合密集型IO的應(yīng)用場景仗谆,比如實時多人在線聊天、游戲淑履、新聞隶垮、微博等。??
? ? ? ? ? ? 5. 單線程秘噪。Node.js的單線程是指主線程為單線程狸吞,所有的阻塞都放入到一個線程池中,然后主線程通過隊列的方式跟線程池來協(xié)作指煎,所以我們在編寫代碼的時候不需要考慮線程的問題蹋偏。
優(yōu)點:適合高并發(fā),密集IO的應(yīng)用場景贯要。
? ? ? ? ? ?因為針對每個并發(fā)的請求暖侨,都會為其分配注冊一個IO事件和一個回調(diào)函數(shù)。然后程序會按照順序去進行事件的處理崇渗,并在處理完成后會調(diào)用各自的回調(diào)函數(shù)。其中事件處理是由Node.js工作線程去處理的(Node.js底層的libuv是由多線程的線程池并行IO處理),因此主線程就不需要等待(即不會阻塞新的請求)宅广,只需要把當前的IO事件分配下去就可以繼續(xù)去執(zhí)行其他的事件葫掉,而不會發(fā)生阻塞。
缺點:不適合CPU密集型操作的使用場景跟狱。
? ? ? ? ? ?因為Node.js只支持單線程俭厚,所以只能利用一個CPU,無法充分的利用CPU資源(現(xiàn)在都是多核CPU)驶臊,如果遇到長時間的計算挪挤,就會導致CPU時間片無法釋放,后面的IO就無法發(fā)起关翎。
? ? ? ? ? ?可靠性低扛门,一旦代碼哪里出問題了,整個系統(tǒng)就崩潰了纵寝。(單進程论寨,單線程)
二、NVM:?NVM全稱Node Version Manager爽茴,是 Node.js 版本管理器葬凳,它讓我們能方便的對 Node.js 的版本進行管理。?
三室奏、NPM:NPM是隨同Node.js一起安裝的包管理工具火焰,它具有以下功能:允許用戶從NPM服務(wù)器下載別人編寫的第三方包到本地使用。允許用戶將自己編寫的包或插件上傳到NPM服務(wù)器供別人下載使用胧沫。
四昌简、NRM:這個類似與NVM,用來管理NPM Registry琳袄,簡單點說就是管理在執(zhí)行npm install命令時江场,從哪個倉庫地址里下載你需要的包。
安裝
一窖逗、NVM的安裝
因為NVM是用來管理Node.js的版本的址否,所以這里我們先介紹NVM的安裝。
1.下載NVM: https://github.com/coreybutler/nvm-windows/releases(選擇下載第一個nvm-noinstall.zip)
2.解壓壓縮包:C:\dev\nvm碎紊。解壓后文件夾下有如下文件:
3.雙擊install:出現(xiàn)如下窗口(以管理員身份運行)
4.直接回車:然后會出現(xiàn)一個名為settings.txt的文件佑附。把該文件中的內(nèi)容替換為如下內(nèi)容:
root: C:\dev\nvm
path: C:\dev\nodejs
arch: 64
proxy: none
node_mirror: http://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/
5.點擊保存:此時C:\dev\nvm下會多出一個settings.txt文件
6.環(huán)境配置:
? ? 第一步,根據(jù) 計算機-》右擊屬性-》高級系統(tǒng)設(shè)置-》系統(tǒng)變量 打開環(huán)境變量配置窗口仗考;
? ? 第二步音同,在系統(tǒng)變量中添加兩個變量NVM_HOME 和 NVM_SYMLINK,其值分別為C:\dev\nvm和C:\dev\nodejs秃嗜;
? ? 第三步权均,修改Path顿膨,如果Path中添加了C:\dev\nvm;或者是C:\dev\nodejs,刪掉叽赊,然后在Path的最前面輸入: ;%NVM_HOME%;%NVM_SYMLINK%; (注意前后的";"別忘了)恋沃;
? ? 第四部,點擊“確定”就好啦必指!
7.測試:配置完成后囊咏,打開cmd,輸入nvm v塔橡,如果出現(xiàn)下圖信息梅割,恭喜你安裝成功!
二葛家、Node.js安裝
????????在安裝好NVM后户辞,Node.js的安裝就非常簡單了。首先打開cmd惦银,輸入?nvm install latest??咆课。如果網(wǎng)絡(luò)暢通,我們會看到正在下載的提示扯俱,下載完成后就可以通過?nvm use 版本號?指定使用哪個node版本书蚪。
? ? ? ? 注意:如果你是第一次下載,在use之前迅栅,C:\dev目錄下是沒有nodejs這個文件夾的殊校。在輸入: nvm use 10.9.0 之后,你會發(fā)現(xiàn)读存,C:\dev目錄下多了一個nodejs文件夾为流,這個文件夾不是單純的文件夾,它是一個快捷方式让簿,指向了 C:\dev\nvm 里的 v10.9.0 文件夾敬察。
????????備注: 如果你的電腦系統(tǒng)是32 位的,那么在下載Node.js版本的時候尔当,一定要指明 32 如: nvm install 5.11.0 32?莲祸,這樣在32位的電腦系統(tǒng)中,才可以使用椭迎,默認是64位的锐帜。
? ??????常用的NVM命令:
nvm install :安裝指定版本,可模糊安裝畜号,如:nvm install v6.2.0或nvm install 6.2
nvm uninstall:刪除已安裝的指定版本缴阎,語法與install類似
nvm use:切換使用指定的版本(如果不好用,試試以管理員身份運行)
nvm ls:列出所有安裝的版本
nvm ls-remote:?列出所以遠程服務(wù)器的版本(官方node version list)
nvm current:顯示當前的版本
nvm alias:給不同的版本號添加別名
nvm unalias:刪除已定義的別名
nvm reinstall-packages:在當前版本node環(huán)境下简软,重新全局安裝指定版本號的npm包
三蛮拔、NPM安裝
1. 設(shè)置npm全局安裝路徑
npm config set prefix "C:\dev\nvm\npm"
這是在配置npm的全局安裝路徑述暂,然后在用戶文件夾下會生成一個.npmrc的文件,用記事本打開后可以看到如下內(nèi)容:
prefix=C:\dev\nvm\npm
2.安裝NPM:打開cmd然后輸入命令: npm install npm -g 语泽。回車后會發(fā)現(xiàn)正在下載npm包贸典,在C:\dev\nvm\npm目錄中可以看到下載中的文件视卢,只要用如下命令就可以把包安裝在配置的全局路徑里踱卵。
npm install -g 包名
3.配置環(huán)境變量:在系統(tǒng)環(huán)境中增加NPM_HOME變量,其值設(shè)為C:\dev\nvm\npm据过。然后在Path的最前面添加“;%NPM_HOME%”惋砂。因為這個一定要添加在 %NVM_SYMLINK%之前,所以我們直接把它放到Path的最前面绳锅。
4.測試:新打開一個命令窗口西饵,輸入npm -v ,若顯示如下信息鳞芙,則說明安裝成功眷柔。
5.安裝淘寶cnpm:我們還可以安裝cnpm工具,它是中國版的npm鏡像庫原朝,是npm官方的一個拷貝驯嘱。因為我們和外界有一堵墻隔著,所以國內(nèi)用這個會比較快喳坠。淘寶也弄了一個和npm一樣的鏡像庫鞠评,它和官方的npm每隔10分鐘同步一次。安裝方式:
npm install -g cnpm –registry=http://r.cnpmjs.org
或
npm install -g cnpm –registry=https://registry.npm.taobao.org
安裝好了cnpm后壕鹉,直接執(zhí)行cnpm install 包名即可剃幌。比如:cnpm install webpack -g 就可以了。-g只是為了把包安裝在全局路徑下晾浴。如果不全局安裝负乡,也可以在當前目錄中安裝,不用-g就可以了脊凰。
四抖棘、NRM安裝
? ? ? ? NRM(npm registry manager )是NPM的鏡像源管理工具,有時候國外資源太慢笙各,那么我們可以用這個來切換鏡像源钉答。
安裝NRM:
npm install nrm -g
NRM常用命令:
nrm ls:列出可選的鏡像源
nrm add?repository_name? repository_url:添加新的鏡像源
nrm use repository_name :? 切換到相應(yīng)的鏡像源
五、掃尾工作
????????所有一切都安裝好后杈抢,如果你之前有在官網(wǎng)下載安裝過Node.js数尿,卸載了即可,然后輸入以下命令惶楼,出現(xiàn)下圖說明一切正常OK啦~~
結(jié)語
????????作為一名剛接觸前端開發(fā)的小白右蹦,深知還有很長的道路要走诊杆。我會繼續(xù)努力,不斷學習何陆,同時也會繼續(xù)保持記錄的良好習慣晨汹,希望自己有朝一日能夠成為一名優(yōu)秀的前端開發(fā)工程師。
? ? ? ? 好啦贷盲,本篇文章就到這里了淘这,如果對各位看官有一小丟丟的幫助,那我就會很開心啦巩剖!如果有什么問題或是意見铝穷,也非常歡迎各位看官留言交流~~拜拜!