国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

Node.js的包詳細介紹_node.js

來源:懂視網(wǎng) 責編:小采 時間:2020-11-27 21:31:58
文檔

Node.js的包詳細介紹_node.js

Node.js的包詳細介紹_node.js:在Node.js語言中,包和模塊并沒有本質(zhì)的不同,包是在模塊的基礎上更深一步的抽象,包將某個獨立的功能封裝起來,用于發(fā)布、更新、依賴管理和進行版本控制。Node.js根據(jù)CommonJS規(guī)范實現(xiàn)了包機制,開發(fā)了npm來解決包的發(fā)布和獲取需求。 Node.js的包是
推薦度:
導讀Node.js的包詳細介紹_node.js:在Node.js語言中,包和模塊并沒有本質(zhì)的不同,包是在模塊的基礎上更深一步的抽象,包將某個獨立的功能封裝起來,用于發(fā)布、更新、依賴管理和進行版本控制。Node.js根據(jù)CommonJS規(guī)范實現(xiàn)了包機制,開發(fā)了npm來解決包的發(fā)布和獲取需求。 Node.js的包是

在Node.js語言中,包和模塊并沒有本質(zhì)的不同,包是在模塊的基礎上更深一步的抽象,包將某個獨立的功能封裝起來,用于發(fā)布、更新、依賴管理和進行版本控制。Node.js根據(jù)CommonJS規(guī)范實現(xiàn)了包機制,開發(fā)了npm來解決包的發(fā)布和獲取需求。

Node.js的包是一個目錄,其中包含JSON格式的包說明文件package.json。Node.js的包基本遵循CommonJS規(guī)范,因此具備以下特征:

CommonJS規(guī)范定義的包特性:

1)頂層目錄包含package.json文件;
2)bin目錄存放二進制文件;
3)lib目錄存放JavaScript文件;
4)doc目錄存放文檔;
5)test目錄存放單元測試。

Node.js的模塊與文件是一一對應的,文件不僅可以是JavaScript源碼文件或二進制文件,還可以是目錄。最簡單的包,就是一個目錄的模塊。

Node.js的包通常是一些模塊的集合,在模塊的基礎上提供了更高層的抽象,相當于提供了一些固定接口的函數(shù)庫。
通過定制package.json,我們可以創(chuàng)建更復雜、更完善、更符合規(guī)范的包用于發(fā)布。

Node.js在調(diào)用包時,首先會檢查包中的package.json文件的main字段,將其作為包的接口模塊,如果package.json文件的main字段不存在,那么Node.js會嘗試尋找index.js或index.node作為包的接口。

package.json文件是CommonJS規(guī)范用于描述包的文件,完全符合規(guī)范的package.json文件應該包含以下字段:
1)name:包名。包名是唯一的,由小寫字母、數(shù)字和下劃線組成,不能含空格。
2)description:包說明。對包進行簡要描述。
3)version:版本號。滿足《語義化版本識別》規(guī)范的版本字符串。
4)keywords:關(guān)鍵字數(shù)組,通常用于搜索。
5)maintainers:維護者數(shù)組。每個元素包含name、email(可選)、web(可選)字段。
6)contributors:貢獻者數(shù)組。格式與maintainer數(shù)組相同。包作者應該是貢獻者數(shù)組的第一個元素。
7)bugs:提交bug的地址,可以是網(wǎng)址或電郵地址。
8)licenses:許可證數(shù)組。每個元素要包含type(許可證名稱)和url(鏈接到許可證文本的地址)字段。
9)repositories:倉庫托管地址數(shù)組。每個元素要包含type(倉庫的類型,如Git)、url(倉庫地址)和path(相對于倉庫的路徑,可選)字段。
10)dependencies:包依賴。是一個關(guān)聯(lián)數(shù)組,由包名和版本號組成。

注:《語義化版本識別》規(guī)范是國外提出的一套版本命名規(guī)范,最初目的是解決各種各樣的版本號大小比較的問題,目前被許多包管理系統(tǒng)所采用。

下面是一個完全符合CommonJS規(guī)范的package.json例子:
代碼如下:
{
"name": "testpackage",
"description": "My package for CommonJS.",
"version": "0.1.0",
"keywords": [
"testpackage",
"liq"
],
"maintainers": [
{
"name": "liq",
"email": "liq@hotmail.com",
}
],
"contributors": [
{
"name": "liq",
"web": "http://blog.csdn.net/chszs"
}
],
"bugs": {
"mail": "liq@hotmail.com",
"web": "http://blog.csdn.net/chszs"
},
"licenses": [
{
"type": "Apache License v2",
"url": "http://www.apache.org/licenses/apache2.html"
}
],
"repositories": [
{
"type": "git",
"url": "http://github.com/chszs/packagetest.git"
}
],
"dependencies": {
"webkit": "1.2",
"ssl": {
"gnutls": ["1.0", "2.0"],
"openssl": "0.9.8"
}
}
}

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

Node.js的包詳細介紹_node.js

Node.js的包詳細介紹_node.js:在Node.js語言中,包和模塊并沒有本質(zhì)的不同,包是在模塊的基礎上更深一步的抽象,包將某個獨立的功能封裝起來,用于發(fā)布、更新、依賴管理和進行版本控制。Node.js根據(jù)CommonJS規(guī)范實現(xiàn)了包機制,開發(fā)了npm來解決包的發(fā)布和獲取需求。 Node.js的包是
推薦度:
標簽: 介紹 js 詳細介紹
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 国产精品高清一区二区 | 操比网站 | 精品一区二区久久久久久久网精 | www.香蕉视频在线观看 | 日韩欧美一区二区三区在线播放 | 国产精品久久久久久久久99热 | 香蕉久久综合 | 国产日韩久久久久69影院 | 精品伊人久久久久7777人 | 国产精品1000部在线观看 | 久久无码精品一区二区三区 | 亚洲精品视频在线 | 日韩在线观看视频免费 | 日韩在线视频免费 | 一区二区三区欧美日韩 | 亚洲欧美一区二区三区九九九 | 亚洲国产欧美在线 | 高清视频一区 | 日韩欧美一区二区三区久久 | 日本免费一区尤物 | 2021精品国内一区视频自线 | 亚洲一区二区三区在线免费观看 | 亚洲国产成人久久一区www | 欧美日韩中文字幕在线 | 青青热久久国产久精品 | 国产精品久久一区二区三区 | 亚洲欧美日韩三级 | 久久国产精品成人免费 | 国产精品日本 | 久久夜色精品国产亚洲 | 久久亚洲精品国产精品777777 | 日韩国产综合 | 日本aⅴ精品一区二区三区久久 | 国产中的精品一区的 | 国产最新精品视频 | 欧美一区二区三区在线 | 亚洲精品福利在线观看 | 中文字幕亚洲天堂 | 亚洲综合无码一区二区 | 欧美国产精品va在线观看 | 一本综合久久国产二区 |