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

news2024/11/26 13:19:20

包管理工具系列文章目录

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

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

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

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

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

目录

🌟准备工作

1.使用官方镜像源

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

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

4.创建工程根目录

5.使用npm init进行初始化

🌟发布

1.开发

2.确定版本

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/989873.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

安达发|APS高级排产软件的三大维度全解

APS软件&#xff0c;全称Advanced Planning and Scheduling,即先进计划与排程系统。它是一种基于计算机技术的集成管理软件&#xff0c;主要用于制造业企业的生产计划、物料需求计划、生产调度、工单管理等方面。APS软件的出现&#xff0c;为企业提供了一种高效、准确、实时的生…

C++——类与对象(下篇)

前言 前面已经介绍了类与对象&#xff08;上&#xff09;&#xff0c;类与对象&#xff08;中&#xff09;的两篇文章&#xff0c;下面是类与对象的最后一些重要知识点的介绍和总结。 目录 再谈构造函数Static成员友元内部类匿名对象拷贝对象时的一些编译器优化再次理解封装…

Linux基于多线程和任务队列实现生产消费模型

目录 一、生产者消费者模型 二、代码实现模型 2.1 BlockQueue.hpp 2.2 MainCP.cc 2.3 执行结果 三、效率优势 一、生产者消费者模型 将上述图片逻辑转换成代码逻辑就是&#xff0c;一批线程充当生产者角色&#xff0c;一批线程充当消费者角色&#xff0c;仓库是生产者和消…

SpotBugs(是FindBugs的继任者)安装、使用

SpotBugs介绍 SpotBugs和FindBugs的关系 SpotBugs是FindBugs的继任者&#xff0c;从SpotBugs停止的地方继续。 备注&#xff1a;FindBugs项目已经停止了&#xff0c;从2015年发布3.0.1版本以后再没有新的版本。 SpotBugs通过静态分析寻找java代码中的bug&#xff0c;通过发现…

vs2019 c++开发linux应用

VS2019 C的跨平台开发——Linux开发_Mr_L_Y的博客-CSDN博客前言由于前段时间正好买了一个服务器来跑Tensorflow的推理模型&#xff0c;所以借这个机会把Linux的开发也一并补上。先声明我的服务器是Ubuntu16.04&#xff0c;下面文章的内容也是基于Ubuntu16.04的。为什么标题要写…

RDG相关记录

最小模块&#xff1a; 加一个空pass GraphBuilder.AddPass(RDG_EVENT_NAME("TEST"),PassParameters,ERDGPassFlags::Raster,[](FRHICommandList& RHICmdList){}); 注意&#xff1a; PassParameters如果定义错误&#xff0c;不会报错&#xff0c;当时增加pass会…

ABY2.0:更低的通信开销

参考文献&#xff1a; [ABY] Demmler D, Schneider T, Zohner M. ABY-A framework for efficient mixed-protocol secure two-party computation[C]//NDSS. 2015.[ABY3] Mohassel P, Rindal P. ABY3: A mixed protocol framework for machine learning[C]//Proceedings of the…

功能定义-紧急制动系统

功能简介 紧急制动系统的触发过程如上图所示&#xff1a; 安全距离报警&#xff1a;当两车距离较近时&#xff0c;会给予驾驶员相应提示 预报警&#xff1a;当两车存在碰撞风险但风险较低【Danger Level1】时&#xff0c;会给予驾驶员提示【提示相比之前更为明显】 制动预填充&…

【JAVA - List】差集removeAll() 四种方法实现与优化

一、场景&#xff1a; 二、结论&#xff1a; 1. 四种方法耗时 三、代码&#xff1a; 一、场景&#xff1a; 求差集 List1 - Lsit2 二、结论&#xff1a; 1. 四种方法耗时 初始条件方法名方法思路耗时 List1.size319418 List2.size284900 List..removeAll(Lsit2)1036987ms…

Spring初始化项目

1、官网用法 访问地址&#xff1a;https://start.spring.io idea配置&#xff1a;https://start.spring.io 2、阿里巴巴加速 访问地址&#xff1a;https://start.aliyun.com/bootstrap.html idea配置&#xff1a;https://start.aliyun.com 3、区别 官网阿里巴巴版本最新稍…

MySQL知识笔记——初级基础(实施工程师和DBA工作笔记)

老生长谈&#xff0c;MySQL具有开源、支持多语言、性能好、安全性高的特点&#xff0c;广受业界欢迎。 在数据爆炸式增长的年代&#xff0c;掌握一种数据库能够更好的提升自己的业务能力&#xff08;实施工程师&#xff09;。 此系列将会记录我学习和进阶SQL路上的知识&#xf…

无需编程经验,也能制作租车预约微信小程序,快速上手

现在&#xff0c;制作租车预约微信小程序不再需要编程经验&#xff0c;只需几个简单的步骤&#xff0c;您就可以拥有自己的租车预约微信小程序。在本文中&#xff0c;我们将介绍如何利用乔拓云网后台来制作租车预约微信小程序&#xff0c;并实现您所需的功能。 首先&#xff0c…

【Spring AOP】什么是 AOP ?

目录 &#x1f957;1 AOP 的思想 &#x1f35a;2 AOP 的组成 &#x1f95a;2.1 切面 &#x1f359;3 AOP 的实现 &#x1f364;3.1 添加 Spring AOP 依赖 &#x1f96b;3.2 定义切面 &#x1f363;3.3 定义切点 &#x1f373;3.4 实现通知 &#x1f354;4 AOP 实现的一个例子 1…

ucosii任务切换及任务同步

任务的切换 一、 运行态&#xff1a;占用CPU 二、 等待&#xff1a;调用Pend或延时函数后&#xff0c;释放CUP使用权。 三、 就绪&#xff1a;Pend条件满足&#xff08;消息到来、等待超时&#xff09;&#xff0c;延时时间完毕后&#xff08;由等待进入就绪&#xff09; 四、 …

好奇!为什么很少看到女项目经理?

最近被刚进公司的新人问到&#xff0c;在项目管理领域&#xff0c;为什么女性项目经理的数量相对较少。一时之间我也有些茫然&#xff0c;下了班总结一下&#xff0c;跟大家探讨探讨。 一、职业选择的局限性 其实大多数时候&#xff0c;出现和性别有关的问题时&#xff0c;都是…

基于SSM的社区管理与服务系统

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

uniapp打包微信小程序。报错:https://api.weixin.qq.com 不在以下 request 合法域名列表

场景&#xff1a;在进行打包上传测试时&#xff0c;发现登录失效&#xff0c;但在测试中【勾选不效应合法域名】就可以。 出现原因&#xff1a;我在获取到用户code后&#xff0c;直接使用调用官方接口换取openid 解决方案&#xff1a; 可以把code带给后端&#xff0c;让他们返…

华为Mate 60和iPhone 15选哪个?

最近也有很多朋友问我这个问题来着&#xff0c;首先两款手机定位都是高端机&#xff0c;性能和体验各有千秋&#xff0c;各自有自己的铁杆粉。 但是让人意想不到的是华为mate60近日在海外越来越受欢迎和追捧&#xff0c;甚至是引起了不少人的抢购&#xff0c;外观设计和…

记一次诡异的Cannot find declaration to go to,Cannot resolve method

记一次诡异的 Cannot find declaration to go to&#xff0c; Cannot resolve method getOnExpressions in Join 对于项目中通常问题&#xff0c;清除缓存&#xff0c;重启idea&#xff0c;或者仔细检查语法通常都能解决问题&#xff0c;但是这次却失效了&#xff0c;以下是原…

移动app、接口、web自动化测试区别

先说说WEB的UI自动化测试&#xff1a;很多人在说自动化测试的时候&#xff0c;基本上现在指的是WEB的UI自动化测试&#xff0c;但其实这是不对的&#xff0c;自动化测试包含了很多开发的技术&#xff0c;不只是界面上的自动化测试。WEB的UI自动化测试只是其中的一种&#xff0c…