一、包结构
必要结构:
- 一个包对应一个文件夹(文件夹名不是包名,但最好与包名保持一致,包名以package.json中的name为主)
- 包的入口文件index.js
- 包的配置文件package.json
- 包的说明文档README.md
二、需要说明的文件
1.配置文件package.json
必要结构:
- name 包的名字
- version 包的版本号
- main 指明包的入口文件
- description 对包的描述
- keywords 搜索包时生效的关键字
- license 包的协议
包的加载机制与package.json文件息息相关
当把目录作为模块标识符,传递给require()进行加载时,有三种加载方式:
(1)在被加载的目录下查找一个叫package.json的文件,并寻找main属性,作为require()加载的入口
(2)如果目录中没有package.json文件,或main入口不存在或无法解析,则Node.js将会试图加载目录下的index.js文件
(3)如果以上两步都失败,则Node.js会在终端打印错误信息,报告模块的缺失:Error Cannot find module ‘xxx’
2.说明文档README.md
使用markdown语法
三、发布包
- cd进入包的主目录
npm login
登录npm账号npm publish
发布包(发包前确认npm服务器上不存在同名包)
- 发布成功后,进入npm查看个人packages
四、删除包
发布72小时内的包可以删除,被删除的包24小时内不允许再次上传
npm unpublish 包名 --force
删除包