01-NPM依賴包的管理工具

一、NodeJS環境

  • 什么是nodejs
   - 不是JS文件,也不是一個JS框架()
   - 而是Server side Javascript runtime, 服務端的一個JS運行時
   - 可以在node運行JS代碼
   - node中只能運行ECMAScript,無法使用 BOM 和 DOM
   - 目前我們的JS是運行在瀏覽器內核中
   - PHP是什么?是一門腳本語言也是一個運行環境

node是一個基于chrome v8引擎的javascript的運行環境。node使用事件驅動、非阻塞式I/O的模型,使其輕量又高效。node的包管理器npm,是全球最大的開源庫生態系統。

二、Node環境搭建

  • mac node (建議使用nvm安裝,方便版本切換)
    pkg安裝包

  • mac NVM(Node Version Manager)

    $ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.30.2/install.sh | bash
    $ echo '. ~/.nvm/nvm.sh' >> .bash_profile
    $ nvm install stable
    $ nvm alias default stable
    
  • Windows node (建議使用nvm安裝,方便版本切換)
    msi_x64 64位安裝包
    msi_x86 32位安裝包

  • windows nvm

    • 下載nvm包,選擇第一個: nvm-noinstall.zip
    • 將文件內容解壓到例如 c:\dev\nvm (將文件拷貝到c:\dev\nvm,解壓到當前文件夾)
    • 雙擊install.cmd不用輸入,直接回車,之后再c盤中會生成一個settings.txt文件,將該文件剪切到c:\dev\nvm目錄中
  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/
  • 配置環境變量。剛才點擊install.cmd文件,會在環境變量的系統變量中生成兩個環境變量:NVM_HOMENVM_SYMLINK;修改這兩個變量值,NVM_HOME變量值為: C:\dev\nvm;NVM_SYMLINK變量值為: C:\dev\nodejs; ,在path后面添;%NVM_HOME%;%NVM_SYMLINK%;
  • 打開命令行: nvm v可以看到nvm版本信息,即表示安裝完成;
  • 如果沒有安裝node,可以通過nvm install latest,下載node最新版本;
第一次下載,在使用use之前,`C:\dev`目錄下沒有nodejs文件夾,輸入例如nvm use 6.3.0后,久會在`C:\dev`目錄中看到nodejs文件夾;
nodejs不是單純的文件夾,它是一個快捷方式,指向`C:\dev\nvm`中v6.3.0文件夾;
`C:\dev\nvm`文件夾下的vx.x.x即nodejs對應版本;

nvm list 查看已經安裝的版本(版本號前面有帶*,表示當前使用版本)
nvm install 6.3.0 安裝對應node對應版本
nvm use 6.3.0 使用對應node版本

nvm --- node version manager(node版本管理器),因為NODE版本比較多,開發人員可能依賴很多版本;通過NVM,可以輕松切換于不同的版本之間;

三、NPM

NPM官網

  • NPM是什么
    Node Package Manager即是Node應用程序依賴包的管理工具,方便于安裝卸載更新等操作;
    NPM是 Node 的開放式模塊登記和管理系統,亦可以說是一個生態圈,一個社區;

  • 為什么使用NPM

  - 包很多
  - 場景:我需要用一個A,A依賴B,B依賴C
  - 常見的包管理工具都有循環依賴的功能
  - 你只需記住你要什么東西
  • 常見的NPM操作

// 引導創建一個package.json文件(安裝包的信息可保持到項目的package.json文件中,以便后續的其它的項目開發或者他人合作使用,也說package.json在項目中是必不可少的)
$ npm init

// 安裝一個包,默認安裝最新穩定版本
$ npm install package_name // 本地安裝
$ npm install package_name -g // 全局安裝

// 安裝特定版本的包
$ npm install package_name@版本號

// 卸載
$ npm uninstall package_name // 卸載本地
$ npm uninstall package_name -g // 卸載全局

// 更新
$ npm update -g

// 查看依賴和它們之間的關系
$ npm ls
// 查看主要的依賴
$ npm ls --depth=0
// 查看全局的所有包()
$ npm ls --depth=0 -g



> 每個版本的nodejs中,都會自帶npm,為了統一起見,需要安裝一個全局的npm工具是有必要的,因為我們需要安裝一些全局的其他包,不會因為切換node版本造成原來下載過的包不可用。
`$ npm config set prefix 'C:\dev\nvm\npm'`
// 上述是配置npm的全局安裝路徑,然后用戶文件夾下會生成一個.npmrc的文件,文件內容為: `prefix=C:\dev\nvm\npm`
// 如果不使用上面方法,可以手動在用戶文件夾下(C:\User\liming)創建.npmrc文件,文件內容為: `prefix=C:\dev\nvm\npm`

> `$ npm install npm -g `
// 下載npm包,在`C:\dev\nvm\npm`目錄中可以看到下載中的文件,以后用nmp安裝包時加上`-g`就可以把包安裝在`C:\dev\nvm\npm`的全局路徑下
// 再為這個npm配置環境變量,變量名`NPM_HOME`,變量值`C:\dev\nvm\npm`;然后再path最前面添加`;%NPM_HOME%`,注意該變量一定是加載`%NVM_SYMLINK%`之前;
// 如果安裝不了(npm鏡像源默認是在國外),可以先執行安裝cnpm工具,之后通過cnpm安裝: `cnpm install npm -g`

>  `$ npm -v`
// 查看npm的版本,此時使用的都是統一的nmp包了

> `$ npm install -g cnpm --registry=https://registry.npm.taobao.org` 
安裝cnpm工具,并設置淘寶的鏡像庫,中國版的npm鏡像庫,`https://registry.npm.taobao.org/`淘寶的,`https://cnpmjs.org/`cnpm工具的, 他們都是npm官方的一個拷貝,他們會每隔10分鐘同步一次  【非必要操作,如果下載比較慢可以切換到國內鏡像】
> cnpm工具包如何安裝? `cnpm install page_name -g`即將npm換為cnpm即可


# 四、NRM
NRM(Node Registry Manager)即是方便管理NPM的鏡像源選擇;

$ npm install -g nrm // 安裝nrm
$ nrm ls // 查看鏡像源列表
$ nrm use taobao // 即使用taobao的這個鏡像源
$ nrm test // 測試鏡像源的速度


# 五、Bower
[Bower官網](http://bower.io/)
- 什么是Bower
web應用程序依賴項管理工具【包的管理工具,還是重復的輪子】

- 為什么使用Bower
方便便捷的方式管理包

- Bower安裝
$ npm install bower -g

- Bower使用
$ bower install page_name
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容