package.json(1)

來源:互聯網
上載者:User

標籤:.json   single   位置   無法   欄位   基本   1.0   targe   符號連結   

藉此篇文章回顧一下package.json裡面的配置和相關檔案,依賴需求的位置。對package.json的理解和學習

一、初步理解

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)1234 { "name" "kocla_test" , "version" "1.0.0" , }

2.scripts

指定了運行指令碼命令的npm命令列縮寫,比如start指定了運行npm run start時,所要執行的命令。

下面的設定指定了npm run dev、npm run bulid、npm run unit、npm run test、npm run lint時,所要執行的命令。 

1234567 "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" , "test" "npm run unit" , "lint" "eslint --ext .js,.vue src test/unit/specs" },

3  dependencies,devDependencies

dependencies和devDependencies兩項,分別指定了項目運行所依賴的模組、項目開發所需要的模組。它們都指向一個對象,該對象的各個成員,分別由模組名和對應的版本要去組成,表示依賴的模組及其版本範圍

--save參數表示將該模組寫入dependencies屬性,
--save-dev表示將該模組寫入devDependencies屬性。

123456789101112131415 "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欄位用於向環境變數輸出值。

12345 {   "name" "foo" ,   "config" : {  "port" "8080" },   "scripts" : {  "start" "node server.js" }   }   5.engines 欄位指明了該項目所需要的node.js版本1234 "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" : "./cli.js" } }

這麼一來,當你安裝myapp,npm會從cli.js檔案建立一個到/usr/local/bin/myapp的符號連結(這使你可以直接在命令列執行myapp)

package.json(1)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.