npm包在现在前端开发中经常使用且便利,而我也是经常使用,而没研究怎么去发布npm。那如何发布npm包呢?

一、在npm的官网上注册一个账号登录,https://www.npmjs.com/

  注意此步骤记住登录名和密码,后面会使用到

二、新建一个目录,比如study,进入到这个study目录里,使用 npm login 命令登录,按照提示操作:

  

  注意 password 输入时不显示,继续按正确方式输入就行,不影响

三、进入study目录,执行命令npm init 初始化项目生成package.json文件

  

  注意:package.json 文件的name值唯一,此名字就是将来供下载使用的npm包名

四、在study目录新建index.js文件

  module.exports = "hello world";

五、在study目录下发布npm包 :npm publish

  此步骤其实发布的就是study目录以及目录下的文件(index.js、package.json)

    如果发布成功,请在 https://www.npmjs.com/settings/XXX/packages 下查看

注意:在 npm publish 过程中遇见的问题:

  1.邮箱未验证

    npm ERR! 403 Forbidden - PUT https://registry.npmjs.org/study123 - you must verify your email before publishing a new package: https://www.npmjs.com/email-edit

    

    处理:将邮箱中的邮箱验证链接处理下就行

  2.npm 包名不唯一

    npm ERR!  you do not have permission to publish 'study'.Are you logged in as the corrent user?

    处理:改变 package.json 中的name 值即可

拓展:

  1.使用发布的npm包

   npm install study123 --save (包名就是package.json文件的name值)
   import test from 'study123'
   console.log(test) //"hello world"

  2.更新一个已经发布的包
     npm version patch //修改包的版本
    npm publish //重新发布包

  3.删除自己发布的npm包
   npm unpublish
    npm --force unpublish

    

如何发布一个npm包?的更多相关文章

  1. 如何发布一个npm包(基于vue)

    前言:工作的时候总是使用别人的npm包,然而我有时心底会好奇自己如何发布一个npm包呢,什么时候自己的包能够被很多人喜欢并使用呢...今天我终于迈出了第一步. 前提:会使用 npm,有 vue 基础, ...

  2. 从0到1发布一个npm包

    从0到1发布一个npm包 author: @TiffanysBear 最近在项目业务中有遇到一些问题,一些通用的方法或者封装的模块在PC.WAP甚至是APP中都需要使用,但是对于业务的PC.WAP.A ...

  3. 发布一个npm包(webpack loader)

    发布一个npm包,webpack loader: reverse-color-loader,实现颜色反转. 初始化项目 mkdir reverse-color-loader cd ./reverse- ...

  4. (转)前端开发-发布一个NPM包之最简单易懂流程

    原文地址:https://www.cnblogs.com/sghy/p/6829747.html 1.npm官网创建npm账户 npm网站地址:https://www.npmjs.com/ npm网站 ...

  5. 如何发布一个 npm 包

    一 背景 在工作时,突然接到经理的一个要求,需要将一个react的高阶组件函数封装成一个npm包.之前从没弄过,当场还是有些懵逼的,但是这毕竟是工作,不能推脱.于是开始了学习.汤坑之旅.最终包发布,线 ...

  6. webpack创建library及从零开始发布一个npm包

    最近公司有个需求,我们部门开发一个平台项目之后,其他兄弟部门开发出的插件我们可以拿来直接用,并且不需要我们再进行打包,只是做静态的文件引入,研究一波后发现,webpack创建library可以实现. ...

  7. 发布一个npm包

    前言 我这里是写了一个vue轮播图插件,因此我使用了vue的脚手架工具创建一个项目,当然你也可以选择自己搭建脚手架. 本例中我会使用vue脚手架创建一个项目,并发布到npm上面去. 通过脚手架创建项目 ...

  8. 如何发布一个包到npm && 如何使用自己发布的npm包 && 如何更新发布到npm的package && 如何更新当前项目的包?

    如何发布一个包到npm First 在https://www.npmjs.com注册一个账号. Second 编辑好项目,文件大致如下: 其中,gitignore可以如下: .DS_Store nod ...

  9. 如何开发一个npm包并发布到npm中央仓库

    转自: https://liaolongdong.com/2019/01/24/publish-public-npm.html 如何开发一个npm包并发布到npm中央仓库需求背景:平时在项目工作中可能 ...

随机推荐

  1. leetcode654 Maximum Binary Tree

    思路: 使用单调栈可以达到O(n). 实现: /** * Definition for a binary tree node. * struct TreeNode { * int val; * Tre ...

  2. 通过js获取本机的IP地址

    参考链接:https://blog.csdn.net/qq_39327418/article/details/90052668

  3. nginx 开启gzip压缩

    Nginx开启Gzip压缩功能, 可以使网站的css.js .xml.html 文件在传输时进行压缩,提高访问速度,!  Web网站上的图片,视频等其它多媒体文件以及大文件,因为压缩效果不好,所以对于 ...

  4. Zabbix的history相关数据表数据太大,执行表分区操作过程

    一.查询zabbix数据库大小 mysql> select table_schema, concat(truncate(sum(data_length)/1024/1024,2),' mb') ...

  5. 复合模式MVC

    这里也只说一下简单的原理. Model:模型实现处理数据的切逻辑. View:视图呈现模型的数据和状态. Control:解读视图对模型的操作. 视图和模型之间使用观察者模式,只要模型的状态改变视图立 ...

  6. 20190724-Python网络数据采集/第 2 章 复杂HTML解析-导航树/正则表达式

    1. 导航树 经典的HTML树状结构 直接看下面的代码示例:(注意目标网页的标签大小写等细节,易出bug) from urllib.request import urlopen from bs4 im ...

  7. spark异常篇-OutOfMemory:GC overhead limit exceeded

    执行如下代码时报错 # encoding:utf-8 from pyspark import SparkConf, SparkContext from pyspark.sql import Spark ...

  8. varnishlog、Varnishstat详解

    Varnish将日志记录到共享内存片段,而不是记录到一个普通文件中.当记录到内存片段的最后处,会再从头开始记,覆写老数据.这比记录到文件要快的多,不需要磁盘空间.Varnishlog是一个用来查看Va ...

  9. spring-boot-plus集成Shiro+JWT权限管理

    SpringBoot+Shiro+JWT权限管理 Shiro Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码和会话管理. 使用Shiro的易于理解的API,您可以 ...

  10. Skywalking的增强与拦截机制

    整理自架构经理(汤哥)的分享 字节增强条件匹配 在 skywalking 中实现很多基于 byte-buddy 的关于链式匹配查询的实现, 代码如下所示: public abstract class ...