Node.js--package.json
阿新 • • 發佈:2020-12-12
一、基本知識
1. npm安裝package.json時 直接轉到當前專案目錄下用命令npm install 或npm install --save-dev安裝即可,自動將package.json中的模組安裝到node-modules資料夾下
2. package.json 中新增中文註釋會編譯出錯
3. 每個專案的根目錄下面,一般都有一個package.json檔案,定義了這個專案所需要的各種模組,以及專案的配置資訊(比如名稱、版本、許可證等元資料)。npm install 命令根據這個配置檔案,自動下載所需的模組,也就是配置專案所需的執行和開發環境。
4. package.json檔案可以手工編寫,也可以使用npm init命令自動生成。
注意:npm init 時,使用者需回答一些問題,然後在當前目錄生成一個基本的package.json檔案。所有問題之中,只有專案名稱(name)和專案版本(version)是必填的,其他都是選填的。
二、基本使用 (完整的欄位說明:http://www.mujiang.info/translation/npmjs/files/package.json.html 中文版)
以下是根據 建立vue專案的時候 npm init自動生成的package.json做詳細的理解
1.最簡單的的一個package.json 檔案(只有兩個資料,專案名稱和專案版本,他們都是必須的,如果沒有就無法install)
{2.scripts 指定了執行指令碼命令的npm命令列縮寫,比如start指定了執行npm run start時,所要執行的命令。 下面的設定指定了npm run dev、npm run bulid、npm run unit、npm run test、npm run lint時,所要執行的命令。"name": "kocla_test", "version": "1.0.0", }
"scripts": { "dev": "node build/dev-server.js", "build": "node build/build.js", "unit": "cross-env BABEL_ENV=test karma start test/unit/karma.conf.js --single-run",3.dependencies和devDependencies dependencies和devDependencies兩項,分別指定了專案執行所依賴的模組、專案開發所需要的模組。它們都指向一個物件,該物件的各個成員,分別由模組名和對應的版本要去組成,表示依賴的模組及其版本範圍 --save引數表示將該模組寫入dependencies屬性, --save-dev表示將該模組寫入devDependencies屬性。"test": "npm run unit", "lint": "eslint --ext .js,.vue src test/unit/specs" },
"dependencies": { "vue": "^2.2.2", "vue-router": "^2.2.0" }, "devDependencies": { "autoprefixer": "^6.7.2", "babel-core": "^6.22.1", "babel-eslint": "^7.1.1", "babel-loader": "^6.2.10", "babel-plugin-transform-runtime": "^6.22.0", "babel-preset-env": "^1.2.1", "babel-preset-stage-2": "^6.22.0", "babel-register": "^6.22.0", "chalk": "^1.1.3", }4.config欄位 config欄位用於向環境變數輸出值。
{ "name" : "foo", "config" : { "port" : "8080" }, "scripts" : { "start" : "node server.js" } }5.engines 欄位 指明瞭該專案所需要的node.js版本
"engines": { "node": ">= 4.0.0", "npm": ">= 3.0.0" },6.bin 許多包有一個或多個可執行檔案希望被安裝到系統路徑。在npm下要這麼做非常容易(事實上,npm就是這麼執行的)。 這需要在你的package.json中提供一個bin欄位,它是一個命令名和本地檔名的對映。在安裝時,如果是全域性安裝,npm將會使用符號連結把這些檔案連結到prefix/bin,如果是本地安裝,會連結到./node_modules/.bin/。 比如,要使用myapp作為命令時可以這麼做:
{ "bin" :這麼一來,當你安裝myapp,npm會從cli.js檔案建立一個到/usr/local/bin/myapp的符號連結(這使你可以直接在命令列執行myapp)。
{ "myapp" : "./cli.js" }
}