包管理工具--》发布一个自己的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,及其他包管理器,如果文中出现有瑕疵的地方各位通过评论或者私信联系我,我们一起进步,有兴趣的伙伴可以关注订阅一下:点击查看更多实用技巧与知识

相关推荐
我是ed3 分钟前
# thingjs 基础案例整理
前端
Ashore_9 分钟前
从简单封装到数据响应:Vue如何引领开发新模式❓❗️
前端·vue.js
落魄实习生12 分钟前
小米路由器开启SSH,配置阿里云ddns,开启外网访问SSH和WEB管理界面
前端·阿里云·ssh
bug丸19 分钟前
v8引擎垃圾回收
前端·javascript·垃圾回收
安全小王子21 分钟前
攻防世界web第三题file_include
前端
&活在当下&22 分钟前
ref 和 reactive 的用法和区别
前端·javascript·vue.js
百事老饼干25 分钟前
VUE前端实现防抖节流 Lodash
前端
web Rookie29 分钟前
React 高阶组件(HOC)
前端·javascript·react.js
工业甲酰苯胺39 分钟前
聊一聊 C#线程池 的线程动态注入
java·开发语言·c#
zfenggo40 分钟前
c/c++ 无法跳转定义
c语言·开发语言·c++