{switch(match){case :return case :return "case :。4.2——Node.js的npm和包( 五 )。" />

4.2——Node.js的npm和包( 五 )

<|>|"|&/g,(match) => {switch(match){case '<':return '<'case '>':return '>'case '"':return '"'case '&':return '&'}})}//定义还原html字符串的函数function htmlUnEscape(str){return str.replace(/<|>|"|&/g, (match) => {switch(match){case '<':return '<'case '>':return '>'case '"':return '"'case '&':return '&'}})}//暴露的对象里面是一个函数module.exports = {data,escape,}
//测试包const itheima = require('./itheima-tools/index')//测试时间格式const thisData = http://www.kingceram.com/post/new Date()console.log(thisData)console.log(itheima.dataFormat(thisData))//注意TIME是一个对象,dataFormat只是里面的一个方法,//转移html字符串,防止用户提交的时候变成一个干扰的const htmlStr = '这是h1标签123 'htmlEscap = itheima.htmlEscape(htmlStr)console.log(htmlEscap)//还原html字符串console.log(itheima.htmlUnEscap(htmlEscap))
js中除了对应的函数外还要暴露
module.exports = {htmlEscape,htmlUnEscape}
module.exports = {dataFormat}
使得index.js只包含引用和
const data = http://www.kingceram.com/post/require('./src/dataFormat')const escape = require('./src/htmlEscape')//暴露的对象里面是一个函数module.exports = {...data,...escape,}
测试的代码是没有变的
//和11传统的一样,测试包const itheima = require('./itheima-tools/index')//要不要index都一样//测试时间格式const thisData = http://www.kingceram.com/post/new Date()console.log(thisData)console.log(itheima.dataFormat(thisData))//注意TIME是一个对象,dataFormat只是里面的一个方法,console.log('========================')//封装成src画个斜线区分,//转移html字符串,防止用户提交的时候变成一个干扰的const htmlStr = '这是h1标签123 'htmlEscap = itheima.htmlEscape(htmlStr)console.log(htmlEscap)console.log('========================')//还原html字符串// console.log(itheima.htmlUnEscap(htmlEscap))// console.log('========================')
发布包
注册 npm 账号
① 访问网站,点击 sign up 按钮,进入注册用户界面
② 填写账号相关的信息:Full Name、 Email、、
③ 点击an按钮,注册账号
④ 登录邮箱,点击验证链接,进行账号的验证
登录 npm 账号
npm 账号注册完成后,可以在终端中执行 npm login 命令,依次输入用户名、密码、邮箱后,即可登录成功 。注意:在运行 npm login 命令之前,必须先把下包的服务器地址切换为 npm 的官方服务器 。否则会导致发布包失败!(nrm npm即可切换到官网 ,查看是nrm ls)
把包发布到 npm 上
将终端切换到包的根目录之后,运行 npm命令,即可将包发布到 npm 上(注意:包名不能雷同) 。
4. 删除已发布的包
运行 npm包名 --force 命令,即可从 npm 删除已发布的包 。
注意:
① npm命令只能删除 72 小时以内发布的包
② npm删除的包,在 24 小时内不允许重复发布
③ 发布包的时候要慎重,尽量不要往 npm 上发布没有意义的包!
模块的加载机制
优先从缓存中加载
模块在第一次加载后会被缓存 。这也意味着多次调用 () 不会导致模块的代码被执行多次 。注意:不论是内置模块、用户自定义模块、还是第三方模块,它们都会优先从缓存中加载,从而提高模块的加载效率 。
内置模块的加载机制