zoukankan      html  css  js  c++  java
  • 如何发布第一个属于自己的npm包

    原文:https://segmentfault.com/a/1190000013940567

    什么是NPM?

    NPM是随同NodeJS一起安装的javascript包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种:

    1. 允许用户从NPM服务器下载别人编写的第三方包到本地使用。

    2. 允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。

    3. 允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。

    发布前的准备

    1. 注册一个npm账号

    前往NPM官网进行注册

    2. 创建一个简单的包

    在本地创建一个项目文件夹sugars_demo (名字自己取,不要和NPM上已有的包名重复冲突就好) 然后通过终端进入文件夹(路径每个人不一样)

    1. cd sugars_demo

    接着可以通过命令创建一个包信息管理文件package.json

    1. npm init

    一路回车或根据包的内容来填写相关信息后,package.json内容大概如下

    1. {

    2.  "name": "sugars_demo",

    3.  "version": "1.0.0",

    4.  "description": "A demo",

    5.  "main": "index.js",

    6.  "scripts": {

    7.    "test": "echo "Error: no test specified" && exit 1"

    8.  },

    9.  "repository": {

    10.    "type": "git",

    11.    "url": ""

    12.  },

    13.  "keywords": [

    14.    "sugars",

    15.    "demo"

    16.  ],

    17.  "author": {

    18.    "name": "sugars",

    19.    "email": "343166031@qq.com"

    20.  },

    21.  "license": "MIT"

    22. }

    接着在sugars_demo文件夹里创建一个index.js文件,然后简单敲几行代码

    1. ;(function (global, factory) {

    2.  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :

    3.    typeof define === 'function' && define.amd ? define(factory) :

    4.      global.moduleName = factory()

    5. }(this, (function () {

    6.  var test = {

    7.    sayHi: function () {

    8.      console.log('hi');

    9.    }

    10.  };

    11.  return test

    12. })))

    到这里一个简单的包就创建好了。 如果想再完善一下的话,还可以在包根目录下创建README.md文件,里面可以写一些关于包的介绍信息,最后发布后会展示在NPM官网上。

    开始发布创建好的包

    使用终端命令行 如果是第一次发布包,执行以下命令,然后输入前面注册好的NPM账号,密码和邮箱,将提示创建成功

    1. npm adduser

    如果不是第一次发布包,执行以下命令进行登录,同样输入NPM账号,密码和邮箱

    1. npm login

    注意:npm adduser成功的时候默认你已经登陆了,所以不需要再进行npm login了

    接着先进入项目文件夹下,然后输入以下命令进行发布

    1. npm publish

    当终端显示如下面的信息时,就代表版本号为1.0.0的包发布成功啦!前往NPM官网就可以查到你的包了

    1. myMacBook-Pro:sugars_demo sugars$ npm publish

    2. + sugars_demo@1.0.0

    如果遇到显示以下信息,比如

    1. npm ERR publish 403

    2. You do not have permission to publish 'bootstrap'.Are you logged in as

    3. the corrent user?:bootstrap

    意思就是你没有权限发布名为“bootstrap”的包,显然这个鼎鼎有名的包已经有人发布了,所以你只能另取它名。

    更新已经发布的包

    更新包的操作和发布包的操作其实是一样的

    1. npm publish

    但要注意的是,每次更新时,必须修改版本号后才能更新,比如将1.0.0修改为1.0.1后就能进行更新发布了。 这里的包版本号有一套规则,采用的是semver(语义化版本),通俗点意思就是版本号:大改.中改.小改

  • 相关阅读:
    黄聪:Visual Studio快速封装字段方法
    黄聪:在vs2008中设置jquery智能提示
    黄聪:Linq初级班 Linq to DataSet体验(单表、多表联合查询JOIN语法)
    mysql分区
    为什么使用框架
    阅读杂记(RSA,PDO)
    Golang之继承模拟
    php中$_REQUEST一个注意点
    记录mysql性能查询过程
    知识杂记
  • 原文地址:https://www.cnblogs.com/liuhao-web/p/8692676.html
Copyright © 2011-2022 走看看