亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > WEB開發 > 正文

nodejs模塊與包

2024-04-27 15:09:41
字體:
來源:轉載
供稿:網友
       概念:模塊(Module)和包(Package)是Node.js最重要的支柱。開發一個具有一定規模的程序不可能只用一個文件,通常需要把各個功能拆分、分裝、然后組合起來。模塊正式為了實現這種方式而誕生,在瀏覽器javaScript中,腳本模塊的拆分和組合通常使用HTML的script標簽來實現,Node.js提供了require函數來調用其他模塊,而且模塊都是基于文件,機制非常簡單,模塊和包的區別是透明的,因此經常不作區分。        一、模塊            1.什么是模塊                    Ryan                    模塊和文件是一一對應的。一個Node.js文件就是一個模塊,這個文件可能是Javascript代碼、JSON或者編譯過的C/C++擴展。                    var http=require('http'),其中http是Node.js的一個核心模塊,通過require函數獲取這個模塊,然后使用其中的對象            2.創建及加載模塊                 (1)創建模塊                        Node.js提供了exports和require兩個對象,其中exports是模塊公開的接口,require用于從外部獲取一個模塊的接口,即獲取模塊的exports對象                附件module.js和getModule.js的實現                (2)單次加載                        上面的例子有點類似創建一個對象,但實際上和對象又有本質的區別,因為require不會重復加載模塊,也就是說無論調用多少次require,獲取的模塊都是同一個                    getModule2.js                (3)覆蓋exports                    有時我們知識想把一個對象封裝到模塊中,例如                    定義模塊:singleobejct.js                    引入模塊使用:getSingleObject.js                    繁瑣:exports.hello=hello;                      引入:require("./singleobject").hello;                    簡易:module.exports=hello;                 exports本身僅僅是一個普通的空對象,即{},它是專門用來聲明接口        二、創建包           1.包的概念                包是在模塊基礎上更深一步的抽象,Node.js的包類似于C/C++的函數庫或者java的類庫,它講某個獨立的功能封裝起來,用于發布、更新、依賴管理的版本控制。開發了npm來解決包的發布和獲取需求。           2.如何創建一個包                CommonJS規范的包應該具備一下特征:                        package.json必須在包的頂層目錄下              二進制文件應該在bin目錄下               javaScript代碼應該在lib目錄下               文檔應該在doc目錄下                單元測試應該在test目錄下                Node.js對包要求并沒有那么嚴格,只要頂層目錄下有package.json,并符合基本規范即可                 (1)作為文件夾的模塊                        somepackage文件夾                        最簡單的包,就是一個作為文件夾的模塊,                        創建一個文件夾 somepackage,里面有一個index.js,里面提供一個方法sayHello()                        var somepackage=require('./somepackage');                         somepackage.sayHello();                        我們使用這種方法可以把文件夾封裝成一個模塊,即所謂的包。包通常是一些模塊的集合,在模塊的基礎上提供了更高層的抽象,相當于提供了一些固定接口的函數庫,通過定制package.json,我們可以創建更復雜、更完善、更符合規范的包用于發布。                    (2)package.json                    前面的例子,在somepackage文件夾下,我們創建一個package.json的文件,內容                        {                            'main':'./lib/index.js'                        }                    Node.js在調用某個包時,會檢查包中package.json文件的main字段,將其作為包的接口模塊,如果package.json或main字段不存在,會常事尋找index.js或index.code作為包的接口                    package.json的規范屬性:                                        name:包的名稱,必須是唯一                        description:包的簡要說明                        version:符合語義化版本識別規范的版本字符串                        keyWords:關鍵字數據,通常用于搜索                        maintainers:維護者數組,每個元素要包含name、email、web可選字段                        contributors:貢獻者數組,格式與maintainers相同。包的坐著應該是貢獻者數據的第一個元素                        bugs:提交bug的地址,可以是網址或者電子郵件地址                        licenses:許可證數組,每個元素要包含type和url字段                        repositories:倉庫托管地址數組,每個元素要包含type、url和path字段                        dependencies:包的依賴,一個關聯數組,由包名稱和版本號組成。 module.js
var name;exports.setName=function(thisName){	name=thisName;}exports.sayHello=function(){	console.log("hello"+name);}getModule.js
var myModule=require('./module');myModule.setName('alex');myModule.sayHello();getModule2.js
var myModule1=require('./module');myModule1.setName('tomm');var myModule2=require('./module');myModule2.setName('jimm');myModule1.sayHello();singleobject.js
function hello(){	var name;	this.setName=function(thisName){		name=thisName;	}	this.sayHello=function(){		console.log('hello '+name);	}};//exports.hello=hello;module.exports=hello;getSingleObject.js
var hello=require('./singleobject'); var he=new hello(); he.setName("tom"); he.sayHello(); var ho=new hello(); ho.setName('jim'); ho.sayHello();
上一篇:表格

下一篇:nodejs回調函數與事件

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美电影在线免费观看网站| 久久久电影免费观看完整版| 欧美精品在线第一页| 国产精品成人免费视频| 亚洲sss综合天堂久久| 成人国产精品一区| 日韩精品极品视频| 国产亚洲精品91在线| 欧美精品18videos性欧| 国产亚洲a∨片在线观看| 日韩美女视频免费在线观看| 91爱视频在线| 亚洲女同精品视频| 色综合久久中文字幕综合网小说| 日本一区二区三区在线播放| 欧美成人黑人xx视频免费观看| 国产精品毛片a∨一区二区三区|国| 2019中文字幕在线免费观看| 在线成人免费网站| 国产色视频一区| 欧美精品在线播放| 中文国产成人精品久久一| 久久精品国产成人| 久久精品视频中文字幕| 久久精品视频网站| 最新国产精品亚洲| 日本19禁啪啪免费观看www| 日韩av在线网址| 欧美孕妇孕交黑巨大网站| 亚洲国产精品中文| 国产精品欧美一区二区| 成人黄色免费网站在线观看| 欧美色道久久88综合亚洲精品| 久久久久久久电影一区| 中文字幕亚洲欧美一区二区三区| 欧美在线日韩在线| 久久国内精品一国内精品| 亚洲精品久久久久久下一站| 国产成+人+综合+亚洲欧美丁香花| 国产精品欧美日韩久久| 亚洲国产免费av| 亚洲毛片在线免费观看| 91日本视频在线| 久久影视电视剧免费网站清宫辞电视| 成人国产在线视频| 精品免费在线视频| 日韩亚洲在线观看| 日韩免费av一区二区| 欧美日韩国产精品一区二区不卡中文| 亚洲天堂第一页| www.日韩不卡电影av| 欧美另类极品videosbestfree| 奇米一区二区三区四区久久| 国产福利精品视频| 国产不卡精品视男人的天堂| 欧美激情三级免费| 91丨九色丨国产在线| 国产精品久久久久久av福利软件| 国产精品福利在线观看网址| 亚洲国产成人精品电影| 欧美中文在线视频| 国产在线一区二区三区| 亚洲男人的天堂在线| 国产成人综合精品在线| 久久久中文字幕| 久久久噜噜噜久久中文字免| 欧美整片在线观看| 日韩在线观看免费av| 一区二区国产精品视频| 国产专区精品视频| 欧美日韩一区二区在线| 高清欧美性猛交xxxx| 一个人www欧美| 欧美精品做受xxx性少妇| 亚洲成人av在线播放| 最近2019好看的中文字幕免费| 欧美精品一本久久男人的天堂| 最近2019年日本中文免费字幕| 亚洲黄色免费三级| 97av视频在线| 亚洲免费视频网站| 亚洲人成网在线播放| 懂色av中文一区二区三区天美| 国产精品久久久久久久久久三级| 亚洲免费人成在线视频观看| 国产主播欧美精品| 国产91露脸中文字幕在线| 亚洲影院在线看| 亚洲亚裔videos黑人hd| 欧美在线xxx| 国产一区二区三区在线| 国产在线观看一区二区三区| 色爱av美腿丝袜综合粉嫩av| 日产日韩在线亚洲欧美| 国产成人在线精品| 亚洲自拍小视频免费观看| 中文字幕国产亚洲| 91老司机精品视频| 欧美日韩激情视频| 精品亚洲一区二区| 91精品国产九九九久久久亚洲| 最近2019年日本中文免费字幕| 亚洲成av人片在线观看香蕉| 日韩精品免费综合视频在线播放| 92看片淫黄大片看国产片| 国产精品专区第二| 亚洲片国产一区一级在线观看| 久久影视电视剧免费网站| 国产精品久久久久久久久久久久久久| 91影院在线免费观看视频| 亚洲一区精品电影| 91av在线看| 国产高清在线不卡| 亚洲人成人99网站| 久久国产色av| 国产精品欧美一区二区| 欧美在线一区二区三区四| 亚洲性生活视频在线观看| 91系列在线播放| 国产精品入口尤物| 亚洲国产精品网站| 亚洲男人天堂网| 久久99热这里只有精品国产| 亚洲人成在线一二| 成人精品一区二区三区| 国产精品91视频| 欧美激情视频在线| 久久久亚洲精品视频| 精品国产视频在线| 国产一区二区在线免费视频| 成人做爽爽免费视频| 国产精品香蕉在线观看| 国产精品亚发布| 久久精品视频网站| 91地址最新发布| 黄色一区二区在线| 亚洲系列中文字幕| 日韩精品免费电影| 久久天天躁狠狠躁老女人| xvideos亚洲人网站| 亚洲国产精品免费| 92福利视频午夜1000合集在线观看| 国产精品日韩欧美| 日韩中文字幕av| 久久久亚洲国产天美传媒修理工| 久久在线免费观看视频| 亚洲一级黄色片| 欧美亚洲国产精品| 自拍偷拍亚洲精品| 色偷偷亚洲男人天堂| 亚洲影院色在线观看免费| 综合国产在线观看| 91亚洲精品在线观看| 欧美性生交大片免网| 久久韩剧网电视剧| 亚洲精品国产福利| 亚洲伊人久久综合| 久久久av电影| 欧美大秀在线观看| 欧美午夜片在线免费观看| 欧美激情2020午夜免费观看| 97人人做人人爱| 国产香蕉精品视频一区二区三区| 国产精品啪视频|