官术网_书友最值得收藏!

2.1.3 package.json屬性說(shuō)明

NPM在package.json文件中管理項(xiàng)目的依賴(lài)項(xiàng)以及項(xiàng)目的元數(shù)據(jù)。

node執(zhí)行require指令時(shí),會(huì)根據(jù)package.json中的依賴(lài)項(xiàng)執(zhí)行查找。每個(gè)項(xiàng)目的根目錄下面,一般都有一個(gè)package.json文件,定義了這個(gè)項(xiàng)目所需要的各種模塊,以及項(xiàng)目的配置信息(如項(xiàng)目名稱(chēng)、版本號(hào)、許可證等元數(shù)據(jù))。npm install命令會(huì)根據(jù)這個(gè)配置文件,自動(dòng)下載所需的模塊,也就是配置項(xiàng)目所需的運(yùn)行和開(kāi)發(fā)環(huán)境。例如:

package.json文件就是一個(gè)JSON對(duì)象,該對(duì)象的每一個(gè)成員就是當(dāng)前項(xiàng)目的一項(xiàng)基礎(chǔ)設(shè)置信息,各成員說(shuō)明如下:

· Name:包名。

· Version:包的版本號(hào),語(yǔ)義版本號(hào)分為X.Y.Z三位,分別代表主版本號(hào)、次版本號(hào)和補(bǔ)丁版本號(hào)。

· Description:包的描述。

· Homepage:包的官網(wǎng)地址。

· Author:包的作者姓名。

· Contributors:包的其他貢獻(xiàn)者姓名。

· Dependencies:依賴(lài)包列表,指定了項(xiàng)目運(yùn)行所依賴(lài)的模塊。如果依賴(lài)包沒(méi)有安裝,npm就會(huì)自動(dòng)將依賴(lài)包安裝在node_module目錄下。

· devDependencies:指定項(xiàng)目開(kāi)發(fā)所需要的模塊。

· repository:包代碼存放的地方的類(lèi)型,可以是Git或Svn,Git可在GitHub上。

· main:main字段指定了程序的主入口文件,require('moduleName')就會(huì)加載這個(gè)文件。這個(gè)字段的默認(rèn)值是模塊根目錄下面的index.js。

· keywords:關(guān)鍵字。

· scripts:指定了運(yùn)行腳本命令的npm命令行縮寫(xiě),比如start指定了運(yùn)行npm run start時(shí)所要執(zhí)行的命令。

· bin:用來(lái)指定各個(gè)內(nèi)部命令對(duì)應(yīng)的可執(zhí)行文件的位置。

· config:用于添加命令行的環(huán)境變量。

package.json文件可以手工編寫(xiě),也可以使用npm init命令自動(dòng)生成:

npm init

這個(gè)命令采用交互方式要求用戶(hù)回答一些問(wèn)題,然后在當(dāng)前目錄生成一個(gè)基本的package.json文件。所有問(wèn)題之中,只有項(xiàng)目名稱(chēng)(name)和項(xiàng)目版本(version)是必填的,其他都是選填的。

有了package.json文件,直接使用npm install命令就會(huì)在當(dāng)前目錄中安裝所需要的模塊。

$ npm install

如果一個(gè)模塊不在package.json文件中,可以單獨(dú)安裝這個(gè)模塊,并使用相應(yīng)的參數(shù)將其寫(xiě)入package.json文件中:

$ npm install express --save
$ npm install express --save-dev

這兩行代碼表示單獨(dú)安裝express模塊,--save參數(shù)表示將該模塊寫(xiě)入dependencies屬性,--save-dev表示將該模塊寫(xiě)入devDependencies屬性。

主站蜘蛛池模板: 曲松县| 枣强县| 黄山市| 海原县| 天峻县| 兰溪市| 即墨市| 若尔盖县| 城步| 遂昌县| 新余市| 扶绥县| 安岳县| 佛冈县| 兰溪市| 铅山县| 贡觉县| 乌拉特前旗| 疏勒县| 临洮县| 平顺县| 浦江县| 桐城市| 青岛市| 香河县| 静安区| 玉门市| 武安市| 甘肃省| 宁明县| 桃园市| 达州市| 香格里拉县| 上蔡县| 枞阳县| 高唐县| 津南区| 保亭| 利辛县| 墨竹工卡县| 莱州市|