Nodejs 包與 NPM 第三方模組安裝和 package.json 以及 CNPM
包與 NPM
Nodejs 中除了它自己提供的核心模組外,我們可以自定義模組,也可以使用 第三方的模組。Nodejs 中第三方模組由包組成,可以通過包來對一組具有相互依 賴關係的模組進行統一管理。
完全符合 CommonJs 規範的包目錄一般包含如下這些檔案。
• package.json :包描述檔案。
• bin :用於存放可執行二進位制檔案的目錄。
• lib :用於存放 JavaScript 程式碼的目錄。
• doc :用於存放文件的目錄。
在 NodeJs 中通過 NPM 命令來下載第三方的模組(包)。
npm i silly-datetime –save
var sd = require('silly-datetime');
sd.format(new Date(), 'YYYY-MM-DD HH:mm');
NPM介紹
npm 是世界上最大的開放原始碼的生態系統。我們可以通過 npm 下載各種各樣的包, 這些原始碼(包)我們可以在 https://www.npmjs.com 找到。
npm 是隨同 NodeJS 一起安裝的包管理工具,能解決 NodeJS 程式碼部署上的很多問題, 常見的使用場景有以下幾種:
- 允許使用者從 NPM 伺服器下載別人編寫的第三方包到本地使用。(silly-datetime)
- 允許使用者從 NPM 伺服器下載並安裝別人編寫的命令列程式(工具)到本地使用。 (supervisor)
允許使用者將自己編寫的包或命令列程式上傳到 NPM 伺服器供別人使用。
NPM 命令詳解
npm -v
檢視 npm 版本使用 npm 命令安裝模組
npm install Module Name
如安裝 jq 模組:
npm install jquery
解除安裝模組
npm uninstall moudleName
npm list 檢視當前目錄下已安裝的 node 包
npm list
檢視 jquery 的版本
npm info jquery
檢視模組的版本
npm info 模組 //檢視模組的版本
指定版本安裝
npm install jquery@1.8.0
package.json
package.json 定義了這個專案所需要的各種模組,以及專案的配置資訊(比如名稱、
版本、許可證等元資料)
1、建立 package.json
npm init
npm init –yes
2、package.json 檔案
{
"name": "test",
"version": "1.0.0",
"description": "test",
"main": "main.js",
"keywords": [
"test"
],
"author": "wade",
"license": "MIT",
"dependencies": {
"express": "^4.10.1"
},
"devDependencies": {
"jslint": "^0.6.5"
}
}
3、安裝模組並把模組寫入 package.json(依賴)
npm install babel-cli --save-dev
npm install 模組 --save
npm install 模組 --save-dev
4、dependencies 與 devDependencies 之間的區別?
使用 npm install node_module –save
自動更新 dependencies 欄位值;
使用 npm install node_module –save-dev
自動更新 devDependencies 欄位值;
dependencie 配置當前程式所依賴的其他包。
devDependencie 配置當前程式所依賴的其他包,只會下載模組,而不下載這些模組的 測試和文件框架
"dependencies": {
"ejs": "^2.3.4",
"express": "^4.13.3",
"formidable": "^1.0.17"
}
^表示第一位版本號不變,後面兩位取最新的
~表示前兩位不變,最後一個取最新
*表示全部取最新
安裝淘寶映象
http://www.npmjs.org npm 包官網
https://npm.taobao.org/ 淘寶 npm 映象官網
淘寶 NPM 映象是一個完整 npmjs.org 映象,你可以用此代替官方版本(只讀),同步頻 率目前為 10 分鐘 一次以保證儘量與官方服務同步。
我們可以使用我們定製的 cnpm (gzip 壓縮支援) 命令列工具代替預設的 npm:
npm install -g cnpm --registry=https://registry.npm.taobao.org