Node.js中也有一些功能的封装,类似C#的类库,封装成模块这样方便使用,安装之后用require()就能引入调用.
一、Node.js模块封装
1.创建一个名为censorify的文件夹
2.在censorify下创建3个文件censortext.js、package.json、README.md文件
1)、在censortext.js下输入一个过滤特定单词并用星号代替的函数。
var censoredWorlds=[\"sad\",\"bad\",\"mad\"]; var custormCensoredWords=[]; function censor(inStr) { for(idx in censoredWorlds) { inStr=inStr.replace(censoredWorlds[idx],\"****\"); } for(idx in custormCensoredWords) { inStr=inStr.replace(custormCensoredWords[idx],\"****\"); } return inStr; } function addCensoreWorld(world) { custormCensoredWords.push(world); } function getCensoreWorlds() { return censoredWorlds.concat(custormCensoredWords); } exports.censor=censor; exports.addCensoreWorld=addCensoreWorld; exports.getCensoreWorlds=getCensoreWorlds;
2)、在package中配置清单信息 例如版本 名称和main指令等。
{ \"author\":\"cuiyanwei\", \"name\":\"censority\", \"version\":\"0.1.1\", \"description\":\"Censors words out of text\", \"main\":\"censortext\", \"dependencies\":{ \"express\":\"latest\" }, \"enginee\":{ \"node\":\"*\" } }
3)、创建的README.md文件主要是描述说明
3.使用命令行创建封装模块
使用命令行导航到censorify文件夹下,然后使用命令 npm pack 封装生成tgz文件,这样就封装了一个模块。
二、封装模块的使用
封装模块的使用有两种方法 :发布到NPM注册表、本地使用,这里只记录下本地使用的方法.
1.创建名readwords文件夹
2.命令行导航到readwords文件夹下,然后安装已经封装好的模块,如果是已经发布到NPM注册表的直接 npm install 名字,如果是在本地 npm install tgz文件路径。
3.安装完成后会在readwords文件夹下生成包含censority子文件夹的node_modules文件夹
4.新建readwords.js文件测试(注意代码console、封装模块的函数别写错了)
var censor=require(\"censority\"); console.log(censor.getCensoreWorlds()); console.log(censor.censor(\"Some very sad,bad and mad text\")); censor.addCensoreWorld(\"gloomy\"); console.log(censor.getCensoreWorlds()); console.log(censor.censor(\"A very goolmy day.\"));
5.使用
用命令行node readwords.js来调用readwords.js查看结果
以上就是本文的全部内容,希望对大家的学习有所帮助。
本文地址:https://www.stayed.cn/item/25861
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我