创建并发布npm包
1.npm官网创建npm账户
npm网站地址:https://www.npmjs.com/
npm网站注册地址:https://www.npmjs.com/signup
2.命令行工具登录npm
npm login

验证登录是否成功
npm who am i
3.创建npm库
npm init

按照提示输入相应内容:

以下为package.json内容:
{
"name": "zgb_npm",
"version": "1.0.0",
"description": "it is a example npm",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "zgb",
"license": "ISC"
}
4.同级目录下新建index.js并编写内容

exports.sayHello=function(){
return "Hello,zhoudaozhang.";
};
到这里我们一个简单的npm包就创建完成了,接下来我们来发布npm包
5.发布npm包
npm publish
如果发布成功,则会提示:

6.验证是否发布成功
换一个目录,下载我们刚刚发布的npm包

说明刚刚已经发布成功了
7.版本更新
npm version <update_type> -m "<message>"
其中update_type 有三种:
patch增加一位补丁号(比如 1.1.1 -> 1.1.2)
minor增加一位小版本号(比如 1.1.1 -> 1.2.0)
major增加一位大版本号(比如 1.1.1 -> 2.0.0)
比如:
npm version patch -m "Version %s - v1.0.2"
最后提交更新的版本:
npm publish
8.舍弃某个版本的模块
npm deprecate my-thing@"< 1.0.2" "critical bug fixed in v1.0.2"
9.撤销自己发布的版本。这只是一个测试的包,最好当然还是撤销下来
//删除要用force强制删除。超过24小时就不能删除了。自己把握好时间。
npm --force unpublish zgb_npm

10.注意事项:
a.发布的时候用国内镜像会报错,我们应使用默认的:
npm config set registry http://registry.npmjs.org
b.npm包package.json中registory属性一定要填写,每次publish npm时package.json中version版本一定要大于上一次。
c.npm publish failed put 500 unexpected status code 401这样的报错信息,往往是没有登录成功,操作npm login
d.npm包的name是唯一的,如果有同名,发布时会报错
最后推荐一个网址:
http://javascript.ruanyifeng.com/nodejs/npm.html#toc19
创建并发布npm包的更多相关文章
- 使用Vue-cli3.0创建的项目,如何发布npm包
使用Vue-cli3.0创建的项目,如何发布npm包 在使用vue进行项目开发时,如果我们想要发布一个包,有时候会有点迷糊,不知道应该怎么修改脚手架的默认设置.这里记录一下一些常见的操作. 创建ind ...
- 利用 Azure Devops 创建和发布 Nuget 包
利用 Azure Devops 创建和发布 Nuget 包 原 Visual Studio Team Service ,简称 VSTS,能够创建 pipelines 管道以构建应用程序,并将其部署到任 ...
- 使用cnpm搭建私有NPM仓库 发布npm包
关于如何使用cnpm搭建私有的npm仓库看这里→ http://blog.fens.me/nodejs-cnpm-npm/ 我本人还没有机会真正实践操作过,公司的npm仓库是我老大搭建的,我这里仅仅记 ...
- 不会发布npm包?进来看看?
前言 npm(Node Package Manager),一个Node的包管理器,平时我们常用的公共模块(插件)或者叫做包大多都放在上面,所以接下来要封装的插件,我们就简单称它为npm包,本文从就从这 ...
- 前端组件用 Scope 发布 npm 包的方法
1.引言 多人.多组织或多组件发布 npm 包到同一个仓库时,可能出现命名冲突问题. 为了解决这个问题,npm 引入了“scope”(范围)概念. 在 Angular 项目中,我们通常可以看到“@an ...
- 用@vue/cli发布npm包
1.环境准备 安装node,npm,@vue/cli 2.初始化项目 用@vue/cli创建新项目 vue create mtest-ui 删除public,main.js,App.vue等无关文件, ...
- 基于vue组件,发布npm包
亲测好用,如出错,请留言 1.项目初始化 使用vue脚手架创建,但vuecli太重,我们使用简单的工程脚手架进行处理,输入命令 vue init webpack-simple my-project n ...
- 使用vuecli3发布npm包
一.使用vuecli3创建项目 vue create svgicon 二.修改目录,开发组件前的准备 把src目录改为examples作为查看组件的演示目录,新建packages目录作为组件编写的目录 ...
- 开发并发布npm包,支持TypeScript提示,rollup构建打包
前言: 工作了几年,想把一些不好找现成的库的常用方法整理一下,发布成npm包,方便使用.也学习一下开发发布流程. 主要用到的工具:npm. 开发库:babel.typescript.rollup.es ...
随机推荐
- SQL SERVER 报:由于数据移动,未能继续以 NOLOCK 方式扫描错误的解决办法。
比如在某个表中使用 select xxx from xxx with(nolock) where xxxx 查询. 提示出错:由于数据移动,未能继续以 NOLOCK 方式扫描. 它有可能某些条件出错, ...
- CSS3实现DIV垂直居中+水平居中的四种方法
<div class="div1"> <div class="div2"></div> </div> html结 ...
- 解决mysql启动时报The server quit without updating PID file 的错误(转)
1.一般是权限问题,把用户和组改为mysql就可以了. chown -R mysql:mysql /var/lib/mysql 2.在启动mysql时报下列错误 [root@mysqld2 ~]# ...
- wamp虚拟服务器
1.安装好wampServer 2.修改配置文件包含 vhosts 文件,操作: 打开apache的配置文件httpd.conf,并去掉#Include conf/extra/httpd-vhosts ...
- linux 下的 mkfifo、exec 命令使用
MKFIFOSection: User Commands (1)Updated: 1998年11月Index Return to Main Contents NAME(名称)mkfifo - 创建F ...
- Servlet小总结(转)
一,什么是Servlet? Servlet是一个Java编写的程序,此程序是基于Http协议的,在服务器端运行的(如tomcat), 是按照Servlet规范编写的一个Java类. 二,Servlet ...
- Redis + keepalived 高可用群集搭建
本次实验环境介绍: 操作系统: Centos 7.3 IP : 192.168.10.10 Centos 7.3 IP : 192.168.10.20 VIP 地址 : 192.168.1 ...
- poptest老李谈数据库优化总结
poptest老李谈数据库优化总结 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:9088 ...
- js 计时器小练-20160601
今天要做一个计时器小练,所以我就做了练习,代码如下. // 初始化时间,以及定义全局量去接收计时器 var timer = 0; var t; var h, min, sec, millisec; / ...
- 浅析Thread类run()和start()的区别
1.先看看jdk文档 void run() If this thread was constructed using a separate Runnable run object, then that ...