还没发布过npm包?简单几步教会你

简介: 什么是npm?npm是nodejs上集成的原第三方包管理工具。

注册npm账号

官网地址:https://www.npmjs.com/

查看npm镜像,如果之前更换过,需要重置

npm config get registry

重置镜像路径

墙内的同学都习惯用淘宝镜像,这将不能访问npm账号,使用命令切换:

npm config set registry https://registry.npmjs.org

之后有必要可以再切回淘宝镜像:

npm config set registry https://registry.npm.taobao.org

创建你的npm包

在项目的git仓库下执行:


npm init

根据提示输入npm包信息,package.json创建完毕。

name:项目的包名,先在npm官网搜索下,或者npm install你想用的包名,以免名称已存在。

version:版本号,以后更新也要用到。

entry point:也就是项目main入口,默认根目录的index.js,调用这个包首先访问的文件。

其他选项不是很重要,后面可以直接在 package.json文件中修改。

在终端登录npm

npm adduser

输入npm账号的用户名、密码、邮箱,登录成功显示:

Logged in as xxx on https://registry.npmjs.org/.

开始发包

npm publish
第一次执行可能会提示:you must verify your email before publishing a new package: https://www.npmjs.com/email-edit,按照提示打开这个网址,输入第2步配置的邮箱,然后登录邮箱点击邮件进行验证即可。

尝试获取npm包

可以先创建一个空目录:

npm install <package-name>

下载完包后根目录创建一个test.js

var t = require('xxx') // xxx为包名
console.log(t)

运行node test,查看控制台输出是否打印插件内容。

更新npm包

修改package.json中的版本号,同样执行:

npm publish

撤销npm包

理论上npm包具有唯一性不可删除,已发布无法撤销只能更新,但是可以执行以下命令来提示该包不再维护:

npm deprecate xxx(包名) '这个包我已经不再维护了'
    

简单脚本

在你要发布的项目根目录创建一个文件 publish

#!/usr/bin/env bash
set -e

# 修改npm源地址
npm config get registry
npm config set registry=http://registry.npmjs.org

# 登陆输入自己的npm账号和密码,还有邮箱
echo '登录npm'
npm login

echo "发布中..."
npm publish

# 改回npm源地址
npm config set registry=https://registry.npm.taobao.org
echo -e "\n发布成功\n"
exit

每次发布时运行命令 sh publish 输入账户信息即可发布。

注意先修改 package 的 version,版本号更新才代表发布更新。
相关文章
|
7月前
|
JavaScript Linux 数据安全/隐私保护
node内网安装npm私服以及依赖包上传发布verdaccio
node内网安装npm私服以及依赖包上传发布verdaccio
492 1
|
2月前
|
JavaScript 前端开发 Java
npm学习一:npm 包管理工具 学习、使用。
这篇文章介绍了npm的基础知识和常用命令,包括安装包、查看包信息、管理依赖等操作,并提供了如何删除npm安装的镜像以及如何彻底删除node_modules文件夹的具体步骤。
104 2
|
2月前
|
JavaScript 前端开发 Java
npm学习一:npm 包管理工具 学习、使用。
这篇文章是关于npm包管理工具的学习、使用指南,包括npm概述、基础命令和如何安装webpack。
73 3
npm学习一:npm 包管理工具 学习、使用。
|
2月前
|
资源调度 前端开发 安全
前端实战:基于Verdaccio搭建私有npm仓库,轻松上传与下载自定义npm插件包
前端实战:基于Verdaccio搭建私有npm仓库,轻松上传与下载自定义npm插件包
127 0
|
3月前
|
数据安全/隐私保护
发布一个npm包
发布一个npm包
123 2
|
5月前
|
运维 Kubernetes Java
阿里云云效操作报错合集之npm包已经发布到了制品仓库,但流水线中拉取依赖时出现404错误,该如何排查
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
阿里云云效操作报错合集之npm包已经发布到了制品仓库,但流水线中拉取依赖时出现404错误,该如何排查
|
4月前
NPM——删除已发布的包
NPM——删除已发布的包
151 1
|
4月前
|
JavaScript 前端开发 开发者
从零到一:教你如何发布自己的npm插件包
从零到一:教你如何发布自己的npm插件包
|
4月前
|
JavaScript
GitHub——自动发布NPM包
GitHub——自动发布NPM包
37 0
|
7月前
|
前端开发 JavaScript 数据安全/隐私保护
从0到1开发一个自己的npm包完整过程
创建自己的 npm 包涉及六个步骤:1) 注册 npm 账号;2) 使用 `npm init` 初始化项目,确保 package.json 的 name 唯一且 private 为 false;3) 开发项目,可封装 UI 组件、函数库或命令行工具;4) 本地调试,通过 `npm link` 在项目中测试;5) `npm login` 登录账号,可能需切换至官方仓库;6) 使用 `npm publish` 发布项目。注意版本号递增,无意义的包不建议发布。
633 2
从0到1开发一个自己的npm包完整过程