调试以及发布npm组件

news2024/9/25 15:28:07
开发原因:

由于公司自己的封装到npm的组件有点问题,负责人由在忙其他,就由我去负责改改,中途出了不少问题,记录一下。

一、下载源码

第一步肯定是去git上把组件的源码下载下来,这一步没什么好说,clone下来本地

二、组件调试

第二步就开始有问题了,因为之前没有调试npm组件,不知道如何调试,请教才知道得用到“npm/pnpm link”(我们公司用的是pnpm,后续都直接写pnpm,npm同理)
1. 首先在组件项目中,运行一下 pnpm start(father-build),将当前项目打个包,这个打包的话会输出一个es文件夹。

  1. 组件项目中,运行一下 pnpm link ,这个作用是将这个组件包,注册到自己的电脑的全局依赖目录 (通过 npm root -g 可以查看电脑全局依赖包的目录)
  2. 需要使用组件项目的的项目目录中,运行 pnpm link <包名>,例如我那个组件名叫test(package.json文件的name),这里就运行pnpm link test. 这样就用本地依赖链接上刚刚注册到全局的依赖了,然后就可以引入使用了。
遇到的问题:
 1.如果使用pnpm link 并且项目中也pnpm link 包名了,但是还是没有成功联调上怎么办?
 解:可以试试加上--global ,在注册的时候和链接时的后面都加上--global
  
 2.在上述操作后,依旧没能成功联调
 解:把项目的组件依赖删了,然后重新装一下整个,先pnpm remove <包名> 然后重新install

 3.我在改动组件后,还需要重新link吗?
 解:不需要,link完成后本地包更新全局也会更新,所说只需要pnpm start本地更新一下

三、发布版本

改完代码就需要发布npm包了,上命令
在这里插入图片描述

1.更新版本

pacth、minor、major分别对应版本的第三位,第二位和第一位。
例如版本1.2.3
patch对应第三位,运行这个命令后,3就会变成4然后去发布就是1.2.4,等于是一个小版本。
minor对应第二位,运行版本加一就是1.3.3。
major对应第一位,运行后是2.2.3

2.发布

运行完上述命令后,会更新版本号,并且去发布,但是什么都没配置发布的话,会报错未注册。
原因是自己还没在npm上注册账号,发布的话没有自己的信息
2.1.首先得运行命令:pnpm addUser,然后会弹出账号、密码、邮箱让你输入
2.2.然后再pnpm login去登录,登录完成的话就可以重新运行发布命令了。

遇到的问题:
 1. 运行pnpm addUser报错 "Web login not supported"
 解:可能原因(1)自己有没有改过npm源,比如改成一些私有源
            (2)pnpm/npm版本问题,你可以试试在命令后加上--auth-type=legacy 

 2. 注册时账号输入完成可是输入密码命令行没反应
 解:这是正常原因,为了隐私不会显示,所以看起来一点反应都没,实际是有输入的,登录同理
 
 3. 因为上述原因,运行了好几次命令,版本号加了好几次怎么办
 解:可以通过npm unpublish命令取消发布,就不会加版本号了

四、项目更新组件

剩下的就是更新项目内的组件版本了,重新install一下要更新的包,就完成了

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

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

相关文章

19.HarmonyOS App(JAVA)依赖布局DependentLayout使用方法

layout/ability_main.xml 显示位置不对&#xff1a;检查布局文件ohos:lef_of "id:tuzi",比如显示在兔子的左侧&#xff0c;这里就会显示不对。 需要id前没有$符号。改为&#xff1a; ohos:lef_of "$id:tuzi" <?xml version"1.0" encodi…

方法引用练习:

技巧&#xff1a; 1.现在有没有一个方法符合我当前的需求 2.如果有这样的方法&#xff0c;这个方法是否满足引用的规则 练习一&#xff1a; 思路&#xff1a;//集合中的数据还是String类型&#xff0c;要放入Student类型数组中还需要先转型成Student类型 public class MyTest…

每日一题Leetcode 1686石子游戏Ⅵ

1686. 石子游戏 VI 题目描述&#xff1a; Alice 和 Bob 轮流玩一个游戏&#xff0c;Alice 先手。 一堆石子里总共有 n 个石子&#xff0c;轮到某个玩家时&#xff0c;他可以 移出 一个石子并得到这个石子的价值。Alice 和 Bob 对石子价值有 不一样的的评判标准 。双方都知道…

linux安装二进制openjdk1.8版本【配置永久加载环境变量】

二进制jdk下载地址&#xff1a;https://www.openlogic.com/openjdk-downloads 选择64位 jdk的 java8下载,然后解压 $ cd /home/ec2-user/config/ $ tar xf openlogic-openjdk-8u382-b05-linux-x64.tar.gz $ mv openlogic-openjdk-8u382-b05-linux-x64 openjdk-8编辑环境变…

机器学习 | 如何利用集成学习提高机器学习的性能?

目录 初识集成学习 Bagging与随机森林 Otto Group Product(实操) Boosting集成原理 初识集成学习 集成学习&#xff08;Ensemble Learning&#xff09;是一种通过组合多个基本模型来提高预测准确性和泛化能力的机器学习方法。它通过将多个模型的预测结果进行整合或投票来做…

vue3-逻辑复用

什么是组合式函数 _无状态逻辑的函数_&#xff1a;它在接收一些输入后立刻返回所期望的输出。 比如 时间格式化的函数。 有状态逻辑的函数: 有状态逻辑负责管理会随时间而变化的状态。 比如 跟踪当前鼠标在页面中的位置。 在 Vue 应用的概念中&#xff0c;“组合式函数”(…

智能汽车竞赛摄像头处理(3)——动态阈值二值化(大津法)

前言 &#xff08;1&#xff09;在上一节中&#xff0c;我们学习了对图像的固定二值化处理&#xff0c;可以将原始图像处理成二值化的黑白图像&#xff0c;这里面的本质就是将原来的二维数组进行了处理&#xff0c;处理后的二维数组里的元素都是0和255两个值。 &#xff08;2…

LeetCode 热题 100 | 链表(中上)

目录 1 141. 环形链表 1.1 哈希表 1.2 快慢指针 2 142. 环形链表 II 2.1 哈希表 2.2 快慢指针 3 21. 合并两个有序链表 4 2. 两数相加 菜鸟做题第三周&#xff0c;语言是 C 1 141. 环形链表 1.1 哈希表 解题思路&#xff1a;遍历链表&#xff0c;在哈希表中…

ROS方向第二次汇报(5)

文章目录 1.本方向内学习内容&#xff1a;1.1.自定义msg&#xff1a;1.1.1.定义msg文件&#xff1a;1.1.2.编辑配置文件&#xff1a; 1.2.自定义srv&#xff1a;1.2.1.定义srv文件&#xff1a;1.2.2.编辑配置文件&#xff1a; 1.3.服务通信案例实现&#xff1a;1.3.1.服务端实现…

HTML+CSS:导航栏组件

效果演示 实现了一个导航栏的动画效果&#xff0c;当用户点击导航栏中的某个选项时&#xff0c;对应的选项卡会向左平移&#xff0c;同时一个小圆圈会出现在选项卡的中心&#xff0c;表示当前选项卡的位置。这个效果可以让用户更加清晰地了解当前页面的位置和内容。 Code <…

正点原子--STM32定时器学习笔记(2)

书接上文&#xff0c;本篇是对基本定时器实验部分进行的总结~ 实验目标&#xff1a;通过TIM6基本定时器定时500ms&#xff0c;让LED0每隔500ms闪烁。 解决思路&#xff1a;使用定时器6&#xff0c;实现500ms产生一次定时器更新中断&#xff0c;在中断里执行“翻转LED0”。 定时…

【leetcode题解C++】98.验证二叉搜索树 and 701.二叉搜索树中的插入操作

98. 验证二叉搜索树 给你一个二叉树的根节点 root &#xff0c;判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下&#xff1a; 节点的左子树只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。 示例…

kubernetes基本概念和操作

基本概念和操作 1.Namespace1.1概述1.2应用示例 2.Pod2.1概述2.2语法及应用示例 3.Label3.1概述3.2语法及应用示例 4.Deployment4.1概述4.2语法及应用示例 5.Service5.1概述5.2语法及应用示例5.2.1创建集群内部可访问的Service5.2.2创建集群外部可访问的Service5.2.3删除服务5.…

Zoho Mail企业邮箱商业扩展系列第1部分:入门指南与基础设置

今天让我们来认识一下王雪琳&#xff0c;她是一位独立经营的营销咨询机构的个体企业家。在开始自己的事业之前&#xff0c;她进行了广泛的市场调研&#xff0c;明确了自己的业务定位&#xff0c;并全力以赴地投入到了自己的企业中。 一、创业背景 王雪琳的营销业务主要集中在…

日志报错 git -c dif.mnemonicprefix=false -c core.guotepath=false 解决方法

前言: 在进行下面操作前,必须确保,你是否安装了Git。 查看Git 在命令行窗口中输入`git --version`: 如果这个命令成功显示了Git的版本信息,这表明Git已经被安装。 1. 使用Sourcetree SourceTree 是 Windows 和Mac OS X 下免费的 Git 和 Hg 客户端…

Kubernetes operator(五)api 和 apimachinery 篇

云原生学习路线导航页&#xff08;持续更新中&#xff09; 本文是 Kubernetes operator学习 系列第五篇&#xff0c;主要对 k8s.io/api 和 k8s.io/apimachinery 两个项目 进行学习基于 kubernetes v1.24.0 代码分析Kubernetes operator学习系列 快捷链接 Kubernetes operator&a…

数字巨轮航行大数据海洋:数据可视化引领时代潮流

在大数据时代的潮流中&#xff0c;数据可视化如同一艘畅行无阻的科技巨轮&#xff0c;引领我们穿越数字浩瀚的大海&#xff0c;使我们在信息的航程中游刃有余。下面我就从可视化从业者的角度&#xff0c;来简单说说数据可视化是如何帮助我们在大数据时代畅行无阻的。 数据可视化…

【Servlet】——Servlet API 详解

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【Servlet】 本专栏旨在分享学习Servlet的一点学习心得&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 目录 一、HttpServlet二、Htt…

【unity小技巧】unity3d环境带雾的昼夜系统变化

最终效果 文章目录 最终效果眩光素材眩光配置全局灯光配置天空盒配置天空盒资产配置天空盒&#xff0c;开启雾 代码控制天空盒 环境 雾 灯光昼夜交替变化参考完结 眩光素材 链接&#xff1a;https://pan.baidu.com/s/1qlFSJSju6ZjwCylwkh14eA?pwdveww 提取码&#xff1a;veww…

Oracle和Mysql数据库

数据库 Oracle 体系结构与基本概念体系结构基本概念表空间(users)和数据文件段、区、块Oracle数据库的基本元素 Oracle数据库启动和关闭Oracle数据库启动Oracle数据库关闭 Sqlplussqlplus 登录数据库管理系统使用sqlplus登录Oracle数据库远程登录解锁用户修改用户密码查看当前语…