发布一个npm模块

发布模块

  • 创建新目录
    • npm init
    • 自动生成package.json
    • nameversion是必须要的
    • nameqyt-test
  • 创建index.js

    1
    export.printMsg = function() {
      console.log('this module name is qyt-test');
    }
  • package.json里有一个main字段,默认引入的就是这个字段的文件

    • "main": "index.js"
      1
      var aMoudle = require('qyt-test');
      /**
      * aMoudle 就是 index.js里输出的内容
      **/
  • 注册npm账号(两个方法)

    1. 注册地址
    2. npm adduser
  • npm登录
    • npm login
  • npm模块发布
    • npm publish
  • npmtags
    • 安装npm包的时候,可以使用npm install qyt-test来安装,或者使用npm install qyt-test@1.0.0npm install qyt-test@beta来安装
    • @后面的标识符就是我们npm publish发布所打的tag
    • 默认情况,发布版本的时候会打上你的package.json的version做为tag。
      • 例如你的package.json里的"version": "1.0.3",你安装的时候就可以使用npm install qyt-test@1.0.3
    • 同时默认情况下,会在最后一次的npm publish中给你打上latest的tag
      • 例如你的最后一次发布package.json里的"version": "1.0.3",你安装的时候就可以使用npm install qyt-test@1.0.3以及npm install qyt-test@latest
    • 你也可以增加其他的tag
      • npm dist-tag add <pkg>@<version> [<tag>] 例如 npm dist-tag qyt-test@1.0.3 beta
      • 你也可以直接在发布的时候npm publish --tag beta
      • 如果你想给已经发布过的模块打tag,也是使用npm dist-tag qyt-test@1.0.0 beta
    • 删除tag
      • npm dist-tag rm <pkg> <tag>
      • 例如npm dist-tag rm qyt-test beta
    • 查看模块tag
      • npm dist-tag ls [<pkg>]
      • 例如 npm dist-tag ls qyt-test

使用你发布的模块

  • 创建路径

    1
    mkdir test
    cd test
    npm init
    npm install qyt-test
    touch index.js
  • 创建文件

    1
    touch index.js
    
    /**
    * in index.js
    **/
    var a = require('qyt-test');
  • 执行
    node index.js会输出this module name is qyt-test