手把手教你发个包(详细步骤)

    在上篇文章中我们已经初步了解了包的一些基本概念与规则,现在我们可以一起在npm官网上发布一个属于自己的包了.

1.需要的功能

  发布自己的包之前,我们首先要想一想这个包需要实现什么功能(什么都可以),例如:实现时间格式化

const tools = require('hsxtapr');
// 2021-10-08 10:52:43

2.初始化包的基本结构

  1. 新建一个xxx文件夹,作为包的根目录. // 名字可以去官网查一个不重复的
  2. 在该文件夹中创建如下三个文件:  package.json ( 包管理配置文件) / index.js( 包入口文件) / README.md( 包说明文档)

3.初始化 package.json文件

npm init -y // 输入该命令自动生成package.json文件

{
  "name": "hsxtapr", // 文件名
  "version": "1.0.0", // 版本号
  "description": "时间格式化", // 描述信息
  "main": "index.js", // 入口文件
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": ["dateFormat"], // 关键字
  "author": "", // 作者
  "license": "ISC" // 开源协议
}

  4.在index.js文件中定义格式化时间的方法

function dateFormat(str) {
    const dt = new Date(str);
    let y = dt.getFullYear();
    let m = (dt.getMonth() + 1).toString().padStart(2, 0);
    let d = dt.getDate().toString().padStart(2, 0);

    let hh = dt.getHours().toString().padStart(2, 0);
    let mm = dt.getMinutes().toString().padStart(2, 0);
    let ss = dt.getSeconds().toString().padStart(2, 0);

    return `${y}-${m}-${d} ${hh}:${mm}:${ss}`;
}

module.exports = {
    dateFormat
}

5.编写包的说明文档

  根目录中README.md文件,是包的使用说明文档,我们可以把包的使用说明写出来方便用户参考,具体写什么内容没有强制要求,只要把包的作用,用法,注意事项描述清楚即可.

## 导入
```js
const tools = require('hsxtapr');

```
## 格式化时间
```js
// 调用 dateFormat方法 对时间进行格式化
const sj = tools.dateFormat(new Date());

console.log(sj);

```
## 开源协议
ISC

    如此操作过后,我们包的功能就已经开发完毕了,但是想要发布到npm官网上,我们得首先有个账号才行,下面,我们就可以去注册账号了

1.注册 npm 账号

  1. 访问npm网站,点击sign up 即可进入注册页面
  2. 填写相关信息,记住填的username,password,email.
  3. 点击 Create an Account 注册账号.
  4. 登录邮箱,点击验证连接,进行账号验证

注意: 邮箱必须完成验证之后才能发布自己开发的包

2.登录 npm 账号

  npm账号注册验证完成后,可在终端执行 npm login 命令,依次输入用户名,密码,邮箱后,即可登录成功.

 注意: 在运行 npm login 命令之前,必须先把下包的服务器地址切换为npm官方服务器,否则会导致发布包失败!

npm who am i //该命名可查看自己是否已经登录

nrm ls // 查看可用服务器地址

nrm use npm // 切换到npm官方服务器,每次登录之前都可输入该命令,确保已经切换到npm官方服务器

3.把包发布到npm上

   登录成功后,我们就可以将包发布上去了.

   首先在包的根目录打开终端,输入npm publish 命令,即可将包发布到 npm 上.

   注意: 包的名字不能雷同,所以要取一个官网上没有的名字.

好了,按照以上步骤,自己的包应该已经上传成功,大家可以到npm官网上登录自己的账号然后在packages里面查看,大家可以去看看然后下载下来用require导入试试功能能不能实现吧!

4.删除已发布的包

  运行 npm unpublish 包名 -- force 命令,即可从npm删除已发布的包

注意: 

  • npm unpublish 删除的包,在24小时内不允许重复发布
  • 发布包的时候要慎重,尽量不要往npm上发布没有意义的包!

毕竟包的名字不能重复,包还会占位置,所以大家尝试过后,功能可以实现的话就可以把包删除掉了.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值