目录
1 Node中包的规范
2 创建包
2.1 package.json
2.2 内容部分
2.2.1 格式化时间 handle_date.js
2.2.2 转义/还原 HTML handle_html.js
2.2.3 index.js
2.2.4 测试功能
2.3 说明文档
3 发布包
3.1 注册账号
3.2 登录账号
3.3 上传
4 删除包
4.1 网站上删除
4.2 命令删除
1 Node中包的规范
- 必须以单独的目录存在
- 包的顶级目录下必须包含package.json这个文件
- package.json必须包含name(包的名字),version(版本号),main(入口文件,require加载的时候一定需要一个JS文件,我们都是写字符串,这个字符串就是包的名字,之后require去包中找到package.json,然后找到main)
下面这个就是moment的入口文件,是package.json同级路径下的 moment.js
2 创建包
创建一个文件夹,文件夹名为你给包起的名字
我们简单搞一搞,在文件夹中创建 包管理配置文件package.json 包入口文件 index.js 包的说明文档 README.md
2.1 package.json
创建后写上如下内容(用新建文本文档内容创建方式就行)
- name 包的名字
- version 包的版本
- main 包的入口函数
- description 包的描述,在搜索的时候会有让别人看到
- keywords 关键字,搜索什么东西可以出现你这个包,比如moment的关键字就是下面这些
- license 开源许可,我们直接使用ISC就可以了
2.2 内容部分
视频里做的包有 格式化时间 和 转义,还原HTML的功能,我这里跟着抄一下
我们不应该把所有的代码都放在index.js中,这样维护起来比较麻烦,我们应该让一个功能占据一个js文件,然后在index.js中引用它们
2.2.1 格式化时间 handle_date.js
2.2.2 转义/还原 HTML handle_html.js
2.2.3 index.js
你可以这样写
也可以这样写,下面这样写在方法多的时候比较方便,三个点相当于把导入的所有东西都算上
2.2.4 测试功能
每搞完一个版本建议简单测一下,写一个test.js
由于我在 package.json 中定义了入口文件了,所以这里直接任务文件夹就好了
发现没有什么问题
2.3 说明文档
一般来讲要有下面这些内容
- 安装方式
- 导入方式
- 每一个功能的使用方法
- 开源协议
内容大致是这个样子的
3 发布包
3.1 注册账号
首先你要注册一个npm账号,需要到npm的官网 npm 点击 sign up
然后就正常注册就行了
3.2 登录账号
首先你要切回npm的源,然后在终端中输入 npm login,之后依次输入 用户名,密码,邮箱,邮箱验证码(回给你重新发一次,不是用注册的)
3.3 上传
切换到你自建包的根目录中,然后输入npm publish
上传之后你就能搜索到你的包
包中会有你写的内容
4 删除包
4.1 网站上删除
当你不想在网站上共享这个包的时候,点击settings
找到下面有一个Delete package,点击后就可以删除了
4.2 命令删除
npm unpublish只能删除72小时内上传的包,删除后在24小时内不可以再上传同名包
这样你刚刚上传的包就被删除了