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
相关推荐
JustHappy6 小时前
古法编程秘籍(七):互联网到底是什么?把两台电脑怎么说话搞懂就够了
前端·后端·网络协议
snow@li6 小时前
SEO-文章标题:写文章时候,分类+主标题+大纲+解释 作为标题 / 不点进去也知道全文覆盖什么 / 标题即架构
前端
kyriewen7 小时前
Git Commit 前自动修复代码风格?配置 Husky + lint-staged,从此 CR 只聊逻辑
前端·git·面试
小和尚同志7 小时前
AI 自动化测试探索(一):Playwright MCP
前端·人工智能·aigc
老马识途2.08 小时前
在AI的帮助下理解spring的启动过程
java·前端·spring
徐小夕8 小时前
Loop Engineering 深度解析与实战指南(全网最全)
前端·算法·github
运筹vivo@8 小时前
Python ContextVar 底层机制与内存模型拆解
前端·数据库·python
#麻辣小龙虾#10 小时前
基于vue3.0开发一款【固废与废气运维管理系统】(支持源码)
前端·vue.js·vue3
Cosolar10 小时前
Docsify零构建文档站完全指南:从快速搭建到企业级部署
前端·开源·github
weixin_4713830310 小时前
Taro-02-页面路由
前端·taro