还没发布过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,版本号更新才代表发布更新。
相关文章
|
3月前
|
前端开发 小程序 API
【微信小程序】-- 使用 npm 包 - API Promise化(四十二)
【微信小程序】-- 使用 npm 包 - API Promise化(四十二)
|
3月前
|
资源调度 小程序 前端开发
【微信小程序】-- 使用 npm 包 - Vant Weapp(四十一)
【微信小程序】-- 使用 npm 包 - Vant Weapp(四十一)
|
3月前
|
JavaScript Linux 数据安全/隐私保护
node内网安装npm私服以及依赖包上传发布verdaccio
node内网安装npm私服以及依赖包上传发布verdaccio
317 1
|
3月前
|
资源调度 小程序 前端开发
【微信小程序】-- npm包总结 --- 基础篇完结(四十七)
【微信小程序】-- npm包总结 --- 基础篇完结(四十七)
|
5天前
NPM——删除已发布的包
NPM——删除已发布的包
17 1
|
1月前
|
运维 Kubernetes Java
阿里云云效操作报错合集之npm包已经发布到了制品仓库,但流水线中拉取依赖时出现404错误,该如何排查
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
阿里云云效操作报错合集之npm包已经发布到了制品仓库,但流水线中拉取依赖时出现404错误,该如何排查
|
2天前
|
JavaScript 前端开发 开发者
从零到一:教你如何发布自己的npm插件包
从零到一:教你如何发布自己的npm插件包
|
6天前
|
JavaScript
GitHub——自动发布NPM包
GitHub——自动发布NPM包
7 0
|
3月前
|
前端开发 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` 发布项目。注意版本号递增,无意义的包不建议发布。
95 2
从0到1开发一个自己的npm包完整过程
|
3月前
|
JSON 小程序 前端开发
小程序中使用npm安装vant组件实现按需引入减少代码包大小,避免触发用户隐私协议
微信小程序按需引入 vant 组件,自动清除项目中未使用的 vant 组件,减少代码包大小,避免因未使用到的 vant 组件触发隐私协议提交审核时被拒
57 1
小程序中使用npm安装vant组件实现按需引入减少代码包大小,避免触发用户隐私协议

热门文章

最新文章

推荐镜像

更多