NPM以及包简介

NPM就是最受欢迎的javascript的包管理工具,在NPM上面有着大量的优秀的框架以及库可以使用。我们只需直接安装,然后就可以很方便地调用了,超级方便,但是怎么发布一个自己的NPM库供别人下载使用呢,这里是具体的教程。

准备工作

npm adduser

输入用户名,密码,邮箱登录(如果使用了镜像源,请切换回NPM npm config set registry https://registry.npmjs.org/),输入

npm whoami

如果出现了用户名,则代表已经登录成功。

创建自己的NPM库

  • 新建目录

mkdir myFirstNpmPackage
cd myFirstNpmPackage/
  • 初始化

npm init

按照提示输入,最后的结果大致会类似这样:

{
  "name": "myFirstnpmPackageTry",
  "version": "1.0.0",
  "description": "try to build and publish my first npm package just for fun",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "huxinmin",
  "homepage": "",
  "repository": "",
  "dependencies": {
    "chalk": "^1.1.3",
    "esutils": "^2.0.2",
    "js-tokens": "^3.0.2"
  },
  "license": "ISC"
}

其中的main字段,可以指定你require('..')这个包的js的路径,一般默认是index.js

  • 编写README.md

每一个插件都有自己的README.md介绍了项目的背景,使用方法等等,我们也需要在项目的根目录下面新建一个README.md文件,然后编写自己的插件介绍,使用方法。如果想要插入一些漂亮的版本号图标的话,可以去https://shields.io/上面,下拉到网站下面,输入文字,版本号颜色,点击Make badge就得到了你制作的图标地址,嵌在页面即可。

  • 编写.gitignore

这样在上传代码的时候,你就可以自定义需要忽略的文件或者目录,就不会上传到github上面。

开始编写

本教程,我就写的简单一些,直接输出一个信息就好了,但是编码的时候要符合CommonJs风格,最后要导出你的对象,新建一个index.js

function myFirstnpmPackageTry(){
    console.log("build my first npm package");
};
module.exports = myFirstnpmPackageTry;

发布

在命令行使用命令

npm publish

这里有几个需要注意的地方:

  • package名字不能和已经存在的包同名
  • package名字必须是小写,不能出现大写
    即可发布成功

取消发布

npm unpublish myfirstnpmpackagetry --force

更新

  1. 修改你的package.json版本号
  2. 使用发布的命令进行发布npm publish

下载使用

直接在项目中下载

npm install --save-dev myfirstnpmpackagetry

然后在文件中使用即可

var test = require('myfirstnpmpackagetry');
test();