使用npm发布自己开发的工具包

简介: 介绍了如何使用npm发布自己开发的工具包笔记的过程,以及如何更新你的npm包版本

1、注册登录NPM账号

  • 注册一个npm账号,地址:npm注册地址
  • 如果你已经有了npm账号就进行登录,地址:npm登录地址
  • 登录时还需要你输入npm发给你邮箱的一次性密码

QQ截图20220627104614.png

  • 进入主界面会给你一个2FA双因子验证的提示,你可以忽略

QQ截图20220627104851.png

2、创建NPM工程

  • 1、新建一个文件夹(genius-storage)
  • 2、初始化npm工程,生成一个package.json的包管理配置文件
npm init  
// or
npm init -y
  • 3、进入genius-storage文件根目录,可以看到package.json包管理文件,这里你可以根据你的情况,做相应的修改。
{
  "name": "genius-storage", // 包名,必须要独一无二
  "version": "1.0.0", // 版本号
  "author": "geniusman", // 作者
  "description": "A user-friendly browser cache tool", // 描述信息
  "keywords": ["localStorage",
    "sessionStorage",
    "cookie",
    "utils"], // 关键词,提升SEO
  "repository": {
    // 代码托管位置
    "type": "git",
    "url": "https://github.com/geniusmanyxh/genius-storage"
  },
  "license": "ISC", // 许可证
  "homepage": "https://www.geniusman.top/#/browseBlog?id=70", // 包的主页或者文档首页
  "bugs": "https://github.com/geniusmanyxh/genius-storage/issues", // 用户问题反馈地址
  "main": "index.js", // 入口文件
  "scripts": {
    // 存放可执行脚本
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "dependencies": {
    // 运行依赖
  },
  "devDependencies": {
    // 开发依赖
  }
}
  • 4、开始编写你的工具
// GStorage.js 具体的实现代码文件
/**
 * @description 根据使用者传入的存储类型以及对应的配置,返回对应存储类型的实例以及方法
 * @param {String} storageType 选择存储类型:local | session  | cookie
 * @param {Object} storageOptions 可选配置参数
 * @returns 返回一个可以操作的(LocalStorage | SessionStorage | Cookie)实例对象
 */
 export const GStorage = (storageType, storageOptions) => {
  你的代码逻辑,我这里太多了,就用省略号了...
 }

// index.js 入口文件
import { GStorage } from './GStorage.js'

export { GStorage }

3、将NPM工程代码上传GitHub

  • 1、在GitHub上创建一个代码仓库genius-storage
  • 2、使用git上传你的本地代码
git init
git add .
git commit -m "first commit"
git branch -M master
git remote add origin https://github.com/geniusmanyxh/genius-storage.git
git push -u origin master

4、发布你的NPM工程到NPM官网

  • 1、检查 npm 镜像地址,如果是淘宝镜像地址,则需要改回 npm 镜像地址
// 查看npm镜像地址
npm config get registry

// 如果是:https://registry.npm.taobao.org/
// 切换npm镜像源,为npm官方的镜像地址
npm config set registry https://registry.npmjs.org/
  • 2、在终端中切换到项目目录下,运行登陆命令,之后按照终端提示输入用户名、密码等信息即可
// 登陆
npm login

// 控制台会提示输入相关信息
Log in on https://registry.npmjs.org/
Username:  // 用户名
Password: // 密码
Email: (this IS public) // 邮箱
Enter one-time password: // 如果之前做过 双因素身份验证 (2FA),需要生成一次性密钥
Logged in as xxx on https://registry.npmjs.org/.

QQ截图20220627114700.png

  • 3、运行npm发布命令
// 发布命令
npm publish

QQ截图20220627115355.png

  • 4、发布成功后,就可以登陆 npm 网站,查看发布包的情况了

QQ截图20220627105152.png

QQ截图20220627115725.png

5、测试使用你发布的NPM包

  • 1、安装你发布的工具包
npm i genius-storage
  • 2、安装完成后可以在你的node-modules目录下找到以下文件

QQ截图20220627120117.png

  • 3、项目使用举例:
import { GStorage } from "genius-storage";

const gLocal = GStorage('local')

gLocal.setFun('key',{value:1})
gLocal.getFun('key')

6、更新你发布的NPM工程

  • 1、如果你更新了你的工程,需要重新发布,记得要commit你的代码,不然会报错
// 自动更改版本号,并且commit
// npm version xxx

// 控制台会返回下一个小版本号 如v1.0.0 ===> v1.0.1
npm version patch

// 重新发布
npm publish
  • 2、根据你所修改的功能和版本差距,来修改你的版本号
// patch:补丁号,修复bug,小变动,如 v1.0.0->v1.0.1
npm version patch

// minor:次版本号,增加新功能,如 v1.0.0->v1.1.0
npm version minor

// major:主版本号,不兼容的修改,如 v1.0.0->v2.0.0
npm version major
相关文章
|
1月前
|
缓存 资源调度 JavaScript
Spartacus 2211 开发使用 npm,CCV2 上用 yarn 进行构建
Spartacus 2211 开发使用 npm,CCV2 上用 yarn 进行构建
29 0
|
2月前
|
JavaScript iOS开发 MacOS
掌握NVM、NRM和NPM:Node.js开发的利器
掌握NVM、NRM和NPM:Node.js开发的利器
71 0
|
2月前
|
资源调度 JavaScript 开发工具
从npm慢如蜗牛到飞驰如光:nrm加速你的Node.js开发
从npm慢如蜗牛到飞驰如光:nrm加速你的Node.js开发
119 0
|
4月前
|
缓存 前端开发 开发工具
13个NPM快速开发技巧:提升前端开发效率
13个NPM快速开发技巧:提升前端开发效率
117 0
|
10月前
|
JavaScript API 开发工具
如何从0开发一个Vue组件库并发布到npm(下)
如何从0开发一个Vue组件库并发布到npm(下)
88 0
|
10月前
|
JavaScript
如何从0开发一个Vue组件库并发布到npm(上)
如何从0开发一个Vue组件库并发布到npm(上)
115 0
|
JSON JavaScript 前端开发
小满 前端埋点SDK 带你 从0 开发 并且发布npm
使用rollup 应为 rollup打包干净,而webpack非常臃肿,可读性差,所以rollup非常适合开发SDK和一些框架,webpack 适合开发一些项目
366 0
小满 前端埋点SDK 带你 从0 开发 并且发布npm
|
JavaScript
【Vue 开发实战】拓展篇 # 47:如何发布组件到npm以及nrm的介绍
【Vue 开发实战】拓展篇 # 47:如何发布组件到npm以及nrm的介绍
101 0
【Vue 开发实战】拓展篇 # 47:如何发布组件到npm以及nrm的介绍
|
资源调度 小程序 JavaScript
微信小程序开发实战(Npm包)
微信小程序开发实战(Npm包)
微信小程序开发实战(Npm包)
|
JavaScript 前端开发 开发工具
使用CLI开发一个Vue3的npm库
使用CLI开发一个Vue3的npm库