一个规范的包,它的组成结构,必须符合以下3点要求:
包必须以单独的目录而存在
包的顶级目录下,必须包含package.json
这个包管理文件
package.json
中必须包含name
,version
,main
这三个属性,分别代表包的名字、版本号、包的入口
注意:以上 3 点要求是一个规范的包结构必须遵守的格式,关于更多的约束,可以参考这个网址
ccljy_date
文件夹,作为包的根目录,尽量不要中文命名,以避免不必要的麻烦ccljy_date
文件夹中,新建如下三个文件:package.json
(包管理配置文件),在项目根目录打开cmd窗口,输入npm init -y
快速创建
index.js
(包的入口文件)
README.md
(包的说明文档)
图示:
{
"name": "flightloong-tools",
"version": "1.0.0",
"description": "提供格式化时间、HTMLEscape相关功能",
"main": "index.js",
"keywords": [
"itcast",
"itheima",
"dateFormat",
"escape"
],
"license": "ISC"
}
// 包的入口文件 index.js
// 定义格式化时间的函数
function dateFormat (dateStr) {
const dt = new Date(dateStr)
const y = padZero(dt.getFullYear())
const m = padZero(dt.getMonth() + 1)
const d = padZero(dt.getDate())
const hh = padZero(dt.getHours())
const mm = padZero(dt.getMinutes())
const ss = padZero(dt.getSeconds())
return ${y}-${m}-${d} ${hh}:${mm}:${ss}
}
// 定义一个补零的函数
function padZero (n) {
return n > 9 ? n : '0' + n
}
// 向外暴露需要的成员
module.exports = {
dateFormat
}
README.md
文件,是包的使用说明文档。通过它,我们可以事先把包的使用说明,以 markdown
的格式写出来,方便用户参考README
文件中具体写什么内容,没有强制性的要求;只要能够清晰地把包的作用、用法、注意事项等描述清楚即可README.md
文档中,会包含以下 6 项内容安装方式
导入方式
格式化时间
转义 HTML 中的特殊字符
还原 HTML 中的特殊字符
开源协议
npm i ccljy_date
js
const date = require('./ccljy_date')
js
// 调用 dateFormat 对时间进行格式化
const dtStr = date.dateFormat(new Date())
// 结果 2020-04-03 17:20:58
console.log(dtStr)
ISC
npm
账号sign up
按钮,进入注册用户界面Full Name
、Public Email
、Username
、Password
Create an Account
按钮,注册账号npm
账号npm
账号注册完成后,可以在项目根目录,打开cmd终端中执行 npm login
命令,依次输入用户名、密码、邮箱,每输完一个内容,按回车,即可登录成功(尽量选择网络良好的环境)npm login
命令之前,必须先把下包的服务器地址切换为 npm
的官方服务器。否则会导致发布包失败!npm
上在包的根目录打开cmd终端,运行 npm publish
命令,即可将包发布到 npm
上(注意:包名不能雷同)
运行 npm unpublish 包名 --force
命令,即可从 npm
删除已发布的包
手机扫一扫
移动阅读更方便
你可能感兴趣的文章