04-开发自己的npm包及发布流程详细讲解

一、包规范

1、包必须以单独的目录存在
2、包的顶级目录下要必须包含package.json这个包管理配置文件
3、package.json中必须包含name,version,main这三个属性,分别代表包的名字,版本号,入口文件

二、开发输入自己的包

1、新建一个文件夹,作为包的根目录
2、在文件夹下,新建如下三个文件:

  • package.json
  • index.js
  • README.md

3、修改package.json内容

{
    "name":"lemon_pack",
    "version" : "1.0.0",
    "main": "01-index.js",
    "description":"",
    "keywords":"",
    "license": "ISC"
}

name 包名,唯一性
version 版本号,默认从1.0.0开始
main 指定包的入口文件
description 描述信息
keywords 关键字
license 默认ISC,开源许可协议

注意:package.json文件也可以通过npm init命令来创建,创建好后修改内容即可

4、功能模块开发
如果自己的开发模块内容较多,最好将不同的功能拆分文件,避免index.js过大

在不同的模块文件中开发模块后,使用module.exports向外暴露,再由index.js文件导入,统一向外暴露

拆分模块,我这里将代码写到02-test.js中:

function htmlEscape(htmlstr){
    return htmlstr.replace(/<|>|"|&/g,(match)=>{
        switch (match){
            case '<':
                return '&lt;'
            case '>':
                return '&gt;'
            case '"':
                return '&quot;'
            case "&":
                return '&amp;'
        }
    })
}

module.exports ={
    htmlEscape
}

在统一入口文件index.js中引入,再统一导出:

const escape = require('./02-test')


module.exports={
    ...escape
}

5、编写README.md

##安装

npm install liuyan_pack

##导入

const pack = require('lemon_pack')

##转义html中特殊字符串
const htmlStr=''
const str=pack.htmlEscape(htmlStr)

三、将自己的包发布到npm上

1、注册npm账号
在这里插入图片描述
2、登陆npm账号
在这里插入图片描述
3、发布包

cd 项目根目录
npm publish

注意:包名不能雷同,最好先到npm上查一下

4、删除已发布过的包

cd 项目目录
npm unpublish 包名 --force 

注意:

  • 使用该命令只能删除72小时以内发布的包
  • 删除包后,在24小时内不允许重复发布
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值