包管理工具--》发布一个自己的npm包

包管理工具系列文章目录

一、包管理工具--》npm的配置及使用(一)

二、包管理工具--》npm的配置及使用(二)

三、包管理工具--》发布一个自己的npm包

四、包管理工具--》yarn的配置及使用

五、包管理工具--》其他包管理器之cnpm、pnpm、nvm

目录

🌟准备工作

1.使用官方镜像源

2.到npm官网注册一个账号,并完成邮箱认证

[3.本地使用 npm cli 进行登录](#3.本地使用 npm cli 进行登录)

4.创建工程根目录

[5.使用npm init进行初始化](#5.使用npm init进行初始化)

🌟发布

1.开发

2.确定版本

[3.使用命令npm publish完成发布](#3.使用命令npm publish完成发布)

4.使用自己的包

🌟写在最后


🌟准备工作

1.使用官方镜像源

查看当前配置的镜像源:

npm config get registry

如果是使用的其他源,请改回官方源

npm config set registry https://registry.npmjs.org/

2.到npm官网注册一个账号,并完成邮箱认证

官网可视化注册:

命令行注册

使用命令 npm adduser

依次输入Username、Password、Email完成注册

3.本地使用 npm cli 进行登录

使用命令npm login登录

使用命令npm whoami查看当前登录的账号

使用命令npm logout注销

4.创建工程根目录

根文件夹名一般就用包名,命名的话先去npm官网搜一下,搜不到的话就可以用来命名自己的包

5.使用npm init进行初始化

需要填写内容如下:

1.package name: (npm)

包名:

2.version: (1.0.0)

版本号(回车默认1.0.0版本号)

3.description:

包的描述

4.entry point: (index.js)

入口文件(回车默认index.js文件)

5.test command:

测试命令(可跳过)

6.git repository:

GitHub地址(可跳过)

7.keywords: ghmin

搜索关键字

8.author: ghmin <208700105@qq.com>

作者

9.license: (ISC)

开源协议

上面第9条开源协议类型大致如下:

我们这里就使用MIT协议 ,这个网站可以查看各种协议就具体协议内容Appendix | Choose a Licensehttps://choosealicense.com/appendix/

既然选择了开源协议,那通常会在项目中加上协议内容,在项目根目录新建文件LICENSE,文件名固定,然后进入上面网址,找到MIT协议:

复制代码
将协议内容复制到项目LICENSE文件,并修改许可年限及作者(公司)
MIT License

Copyright (c) 2023-2099 ghmin

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

🌟发布

1.开发

这里就简单导出一个函数测试

2.确定版本

检查包信息,如版本号等,也就是检查package.json文件

3.使用命令npm publish完成发布

发布成功后就可以去npm官网搜索,可以看到已经有刚刚发布的包啦

4.使用自己的包

新建一个文件,下载刚刚发布的ghmin-test包,并使用如下

这样一来就有了一个自己发布的包啦,接下来就可以退出登录,把镜像改回淘宝镜像喽。

🌟写在最后

包管理工具--》栏目将详细讲解前端包管理器,包括npm,yarn,及其他包管理器,如果文中出现有瑕疵的地方各位通过评论或者私信联系我,我们一起进步,有兴趣的伙伴可以关注订阅一下:点击查看更多实用技巧与知识

相关推荐
GHUIJS3 分钟前
【vue3】vue3.5
前端·javascript·vue.js
翔云API6 分钟前
人证合一接口:智能化身份认证的最佳选择
大数据·开发语言·node.js·ocr·php
jimmy.hua6 分钟前
C++刷怪笼(5)内存管理
开发语言·数据结构·c++
xiaobai12 39 分钟前
二叉树的遍历【C++】
开发语言·c++·算法
-seventy-13 分钟前
对 JavaScript 原型的理解
javascript·原型
DieSnowK16 分钟前
[项目][WebServer][Makefile & Shell]详细讲解
开发语言·c++·http·makefile·shell·项目·webserver
Freak嵌入式17 分钟前
全网最适合入门的面向对象编程教程:50 Python函数方法与接口-接口和抽象基类
java·开发语言·数据结构·python·接口·抽象基类
冷凝女子19 分钟前
【QT】基于HTTP协议的网络应用程序
开发语言·qt·http
知识分享小能手22 分钟前
mysql学习教程,从入门到精通,SQL 删除数据(DELETE 语句)(19)
大数据·开发语言·数据库·sql·学习·mysql·数据开发
&白帝&31 分钟前
uniapp中使用picker-view选择时间
前端·uni-app