npm发包

1、使用公司邮箱注册npm账号

npm官网:www.npmjs.com/

进入npm官网,我们成功注册后,进入第二步

2、切换npm源

我们在日常开发过程当中,经常会因为频繁的使用npm,有不同网速的需求,会换源到淘宝源或者华为源等等等。。。。

首先我们切回为npm源,发包要使用npm源

arduino 复制代码
npm config set registry https://registry.npmjs.org/

然后我们需要检查一下是否切换成功。

arduino 复制代码
npm config get registry 

如果输出结果为:

则切换成功!!!

3、发包

此处我以公司项目为例子

一、初始化对应的npm

csharp 复制代码
npm init

根据提示输入你要发的包的名字,然后一直回车,出现Is this OK?的时候, 输入yes回车。最后会生成一个package.json,如下:

javascript 复制代码
{
  "name": "npm-****", // 包名,包名不允许重复,npm i XXX 下载就是按这个包名下载的
  "version": "1.0.0", // 版本号  --默认是1.0.0,当然版本号可以随意更改
  "author": "***", // 作者名称
  "description": "", // 描述信息--可以不写
  "keywords": ["utils", "format", "money", "phone"], // 关键词,提升SEO  --可以不写
  // 代码托管的位置 --可选,建议必选,除非不打算维护
  "repository": {
    "type": "git",
    "url": "https://github.com/xxxx/xxxx.git"  //代码托管地址
  },
  "license": "ISC", // 许可证 
  "homepage": "", // 这个包的介绍网站首页 --可以没有
  "bugs": "", // 使用者bug反馈地址  ---可以没有
  "main": "index.js", // 入口文件  默认是index.js 可修改 必填
  "scripts": {
    // 存放可执行脚本
    "test": "echo "Error: no test specified" && exit 1"
  },
  "dependencies": {
    // 运行依赖
  },
  "devDependencies": {
    // 开发依赖
  }
}

二、登陆npm

复制代码
npm login

根据提示输入你的用户名,密码,其中密码是盲打的,输入完直接回车

登陆完之后,使用

bash 复制代码
npm whoami

查看登陆状态,登陆成功之后,会出现你的用户名

三、查询包是否可发

查看是否可以发包(因为发布的包名必须是唯一的,所以得查看有没有同样的包名),如果包名重复,会发布失败,需要更换成唯一的包名

如果查不到该包名,报错,就说明没有这个包名,代表可以发布

sql 复制代码
npm view 包名

四、更改版本号

我们可以手动更改版本号,也可以通过命令更改版本号,下面是一些更改版本号的命令

arduino 复制代码
npm version xxx   // 自动更改版本号,并且commit
npm version patch // 控制台会返回下一个小版本号 如v1.0.1
npm version minor // minor:次版本号,增加新功能,如 v1.0.0->v1.1.0
npm version major // major:主版本号,不兼容的修改,如 v1.0.0->v2.0.0

五、发布

预发布,版本号包含 alpha/beta/rc 等后缀,比如 1.0.0-beta.1)时,npm 要求必须通过 --tag 指定标签,不能使用默认的 latest 标签(避免预发布版本覆盖正式版本的标签)。

发布时明确指定标签(比如用 beta 标签)

css 复制代码
npm publish --tag beta

调试完成之后,本地打包 npm run build 或者根据配置进行发布:npm run p:beta,如果使用了yalc自动打包调试,直接publish

复制代码
npm publish

六、登录npm包查看

登录npm后,我们可以在package里看到刚才已经发布成功的包

4、测试包

css 复制代码
npm i ***** -S
相关推荐
踩着两条虫9 小时前
「AI + 低代码」的可视化设计器
开发语言·前端·低代码·设计模式·架构
Jagger_9 小时前
项目上线忙碌结束之后,为什么总想找点事做?
前端
GalenZhang88810 小时前
OpenClaw 配置多个飞书账号实战指南
前端·chrome·飞书·openclaw
萌新小码农‍11 小时前
python装饰器
开发语言·前端·python
threelab11 小时前
Three.js 初中数学函数可视化 | 三维可视化 / AI 提示词
开发语言·前端·javascript·人工智能·3d·着色器
爱学习的程序媛11 小时前
浏览器工作原理全景解析
前端·浏览器·web
我是若尘13 小时前
用 Git Worktree 同时开多个需求,不用来回 stash
前端
IT_陈寒13 小时前
Vue的v-for为什么不加key也能工作?我差点翻车
前端·人工智能·后端
小碗羊肉13 小时前
【JavaWeb | 第十二篇】项目实战——登录功能
java·前端·数据库
一个处女座的程序猿O(∩_∩)O13 小时前
如何保持nginx配置与前端打包dist的路径保持一致、解决页面刷新白屏以及页面跳转问题
运维·前端·nginx