当前位置:网站首页>04-开发自己的npm包及发布流程详细讲解

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

2022-08-11 05:17:00 CapejasmineY

一、包规范

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小时内不允许重复发布
原网站

版权声明
本文为[CapejasmineY]所创,转载请带上原文链接,感谢
https://blog.csdn.net/CapejasmineY/article/details/126251986