W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
管理本地安裝的 npm 包的最佳方法是創(chuàng)建一個?package.json
文件。
一個package.json
文件:
一個package.json
必須具備:
"name"
"version"
{
"name": "my-awesome-package",
"version": "1.0.0"
}
創(chuàng)建 package.json
文件有兩種基本方法。
要使用你提供的值創(chuàng)建一個package.json
文件,請運(yùn)行:
> npm init
這將啟動一個命令行調(diào)查問卷,該調(diào)查問卷將package.json
在你啟動命令的目錄中創(chuàng)建一個。
要獲得默認(rèn)值package.json
,請npm init
使用--yes
?or-y
標(biāo)志運(yùn)行:
> npm init --yes
此方法將package.json
使用從當(dāng)前目錄中提取的信息生成默認(rèn)值。
> npm init --yes
Wrote to /home/ag_dubs/my_package/package.json:
{
"name": "my_package",
"description": "",
"version": "1.0.0",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "https://github.com/ashleygwilliams/my_package.git"
},
"keywords": [],
"author": "",
"license": "ISC",
"bugs": {
"url": "https://github.com/ashleygwilliams/my_package/issues"
},
"homepage": "https://github.com/ashleygwilliams/my_package"
}
name
: 當(dāng)前目錄名version
: 總是?1.0.0
description
: 來自自述文件的信息,或空字符串?""
main
: 總是?index.js
scripts
: 默認(rèn)情況下創(chuàng)建一個空test
腳本keywords
: 空的author
: 空的license
:?ISC
bugs
: 來自當(dāng)前目錄的信息(如果存在)homepage
: 來自當(dāng)前目錄的信息(如果存在)你還可以為 init 命令設(shè)置多個配置選項(xiàng)。一些有用的:
> npm set init.author.email "wombat@npmjs.com"
> npm set init.author.name "ag_dubs"
> npm set init.license "MIT"
筆記
如果package.json
中沒有描述字段,npm 將使用README.md
或 README的第一行。描述可以幫助人們在搜索 npm 時找到你的包,因此在 中進(jìn)行自定義描述package.json
以使你的包更容易找到絕對有用。
如果你希望創(chuàng)建許多 package.json 文件,你可能希望自定義在初始化過程中提出的問題,以便文件始終包含你所期望的關(guān)鍵信息。你也可以自定義字段以及提出的問題。
為此,你在~/.npm-init.js
主目錄中創(chuàng)建自定義.npm-init.js
。
一個簡單的.npm-init.js
可能看起來像這樣:
module.exports = {
customField: 'Custom Field',
otherCustomField: 'This field is really cool'
}
npm init
在你的主目錄中使用此文件運(yùn)行將輸出package.json
包含以下行的文件:
{
customField: 'Custom Field',
otherCustomField: 'This field is really cool'
}
你還可以使用prompt
功能自定義問題。
module.exports = prompt("what's your favorite flavor of ice cream, buddy?", "I LIKE THEM ALL");
要了解有關(guān)如何創(chuàng)建高級自定義的更多信息,請查看init-package-json的文檔
要指定項(xiàng)目所依賴的包,你需要列出要在package.json
文件中使用的包,可以列出兩種類型的包:
"dependencies"
:應(yīng)用程序在生產(chǎn)中需要這些包。"devDependencies"
: 這些包只用于開發(fā)和測試。你可以手動編輯你的package.json
。你需要在包對象中創(chuàng)建一個dependencies
指向?qū)ο蟮膶傩?。此對象將包含命名要使用的包的屬性。它將指向一個semver表達(dá)式,該表達(dá)式指定與您的項(xiàng)目兼容的項(xiàng)目版本。
如果你有只需要在本地開發(fā)期間使用的依賴項(xiàng),請按照與上述相同的說明進(jìn)行操作,但使用名為devDependencies
.
例如,下面的項(xiàng)目在生產(chǎn)中使用my_dep
與主要版本 1 匹配的包的任何版本,并且需要my_test_framework
與主要版本 3 匹配的包的任何版本,但僅用于開發(fā):
{
"name": "my_package",
"version": "1.0.0",
"dependencies": {
"my_dep": "^1.0.0"
},
"devDependencies" : {
"my_test_framework": "^3.1.0"
}
}
向你的依賴項(xiàng)添加依賴項(xiàng)的更簡單(也更棒)的方法package.json
是從命令行npm install
執(zhí)行此操作,使用--save
或?標(biāo)記命令--save-dev
,具體取決于你希望如何使用該依賴項(xiàng)。
要向你的package.json
's添加條目dependencies
:
npm install <package_name> --save
要向你的package.json
's添加條目devDependencies
:
npm install <package_name> --save-dev
npm 使用語義版本控制,或者我們經(jīng)常提到的 SemVer,來管理包的版本和版本范圍。
如果你的package.json
目錄中有一個文件并運(yùn)行npm install
,npm 將查看該文件中列出的依賴項(xiàng)并使用語義版本控制下載最新版本。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: