# node
node由于各個版本特性不同,很多項目需要使用不同版本的node,所以推薦使用[nvm(Node Version Manager)](https://github.com/creationix/nvm)進行管理。
### Mac下安裝
### brew方式
如果機器沒有安裝過node,那么首先`brew install nvm`安裝nvm。
其次需要在shell的配置文件(~/.bashrc, ~/.profile, or ~/.zshrc)中添加如下內容:
~~~
# For NVM
export NVM_DIR=~/.nvm
source $(brew --prefix nvm)/nvm.sh
~~~
注意配置的順序,以防開啟新終端,node出現找不到的情況。
重啟終端,命令行下即可使用nvm,使用`nvm install <version>`進行對應的node版本安裝,寫這篇文章時,我使用的是`nvm install 0.10`,安裝的版本是v0.10.32。使用`nvm use <version>`使用, 再通過`nvm alias default <version>`確保有默認版本。最后使用`nvm ls`查看。
### brew方式補充
如果之前通過'brew install node'方式安裝過node,那么需要先刪除系統中存在的node:
~~~
brew remove --force node
sudo rm -r /usr/local/lib/node_modules
brew prune
sudo rm -r /usr/local/include/node
# 檢查brew是否正常
brew doctor
~~~
### nvm安裝方式
`curl https://raw.githubusercontent.com/creationix/nvm/v0.17.2/install.sh | bash`進行安裝,安裝完成后,運行`nvm`測試命令是否正確,如果不正確,參考官網提供的說明,也是需要在shell的配置文件中加入相應的配置。
如果安裝正確,同樣使用`nvm install <version>`安裝對應版本node,使用`nvm use <version>`使用, 再通過`nvm alias default <version>`確保有默認版本。最后使用`nvm ls`查看。
設置完nvm之后,node的路徑其實是`/Users/#{username}/.nvm/#{nodeVersion}/bin/node`, 一些sublimeText插件默認的路徑是`/usr/local/bin/node`。個人建議創建一個軟連接:
~~~
ln -s /Users/#{username}/.nvm/#{nodeVersion}/bin/node /usr/local/bin/node
~~~
### Windows下安裝
window下我之前都是直接node官網下載mis文件安裝。后續嘗試使用類nvm工具安裝管理。
### nvm-windows方式
睡覺前看了一眼,簡直不能再便捷了!!!項目地址: [nvm-windows](https://github.com/coreybutler/nvm-windows)
下載安裝包,不管之前系統安裝過node與否,安裝過會接管。就能直接使用nvm命令。
### npm的管理
通過nvm安裝的node,每個版本都有一個對應的npm。每次切換,可以使用`npm update -g`進行一次升級,安裝程序的話,需要使用sudo權限。
有一點疑問,如何同步之前安裝的所有-g模塊。。??
### 參考資料
- [node包教不包會](https://github.com/alsotang/node-lessons)
- 介紹
- 程序員基礎知識
- 字符編碼
- 技術名詞
- 語義化版本
- 命名規范
- 書寫文檔
- 開源協議
- 目錄結構
- 正則表達式
- 平凡之路
- 數據結構與算法
- 堆和棧
- 浮點數類型
- XML和JSON
- 算法學習之路
- 排序算法
- 代碼架構
- 設計模式
- 常用的Javascript設計模式
- 面向對象編程
- 繼承
- 多態
- 封裝
- 面向接口編程
- 代碼評審
- 六種量化你代碼的方式
- 程序員必備的代碼審查(Code Review)清單
- 服務器部署
- AWS簡介
- 網絡知識
- HTTPS, SPDY和 HTTP/2性能的簡單對比
- HTTP狀態碼
- 懂點設計
- 佳作賞析
- 無縫平鋪
- Sketch學習
- 設計與實現的平衡
- 寫點東西
- 使用gitbook
- 合格的PM
- 一個好的產品經理
- 產品經理的技能
- 團隊合作
- 關于招聘
- 培訓新人
- 領導能力
- 獲取知識
- MOOC
- Podcasts
- 英語學習
- 設計學習
- 前端學習
- iOS學習
- 游戲開發
- 關注健康
- 過勞檢測
- 關于睡眠
- 提升效率
- 學會閱讀
- 學會提問
- 善用搜索
- 學會寫作
- 時間管理
- 知識管理
- 文件管理
- 密碼管理
- 制作視頻
- 制作PPT
- 論音樂對效率的影響
- 程序員效率指南
- SOHO
- 創業資源
- Hacker
- 保護隱私
- 關于工作
- 找工作前需要思考的問題
- 原則與技巧
- 關于簡歷
- 其他方面
- 硬件相關
- 常用軟件
- Windows
- 硬件配置
- 系統安裝
- 常用軟件
- Mac
- 通用設置
- 權限問題
- alias設置
- 常用軟件
- 開發環境
- 快捷鍵設置
- 常用終端命令
- dotfiles
- Android
- 常用軟件
- 如何登錄美國區GooglePlay
- 開發工具
- git
- EditorConfig
- node
- shadowsocks
- ST3--Windows篇
- ST3--Mac篇
- gulp
- 字體的選擇
- Emacs
- WebStorm
- tmux
- Sketch
- Sketch中文學習資料
- Trello
- 使用Trello管理項目的經驗
- git進階
- 15分鐘學會使用Git和遠程代碼庫
- GitHub秘籍
- JetBrains
- IDE設置
- 附錄
- 計算機科學與技術
- 網站
- 書籍
- 工具