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

·  阅读 1172

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

注册npm账号

官网地址: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: 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,版本号更新才代表发布更新。

分类:
前端
标签:
收藏成功!
已添加到「」, 点击更改