npm包开发

前言

  之前做项目的时候遇到了一个npm包在typescript程序中无法使用的问题,添加了@types也无法作用。打算自己学习一下npm包的开发。简单的记录一下npm包开发的过程。

必备

  1.注册一个npm账号,https://www.npmjs.com/

  2.安装nodejs

  3.安装git

  安装过程就不贴了,都很简单,安装教程也很多。

创建npm包

.
├── bin           //命令配置
├── README.md     //说明文档
├── index.js      //主入口
├── src           //功能文件
├── package.json  //包信息
└── test          //测试用例

  大致的目录结构如上,我们在src下新建一个resize.js,然后写上代码:

const Resize = function() {
    const sizeName = ['B', 'K', 'M', 'G', 'T'];
    if (bytes) {
        const e = Math.floor(Math.log(bytes) / Math.log(1024));
        return (bytes / Math.pow(1024, Math.floor(e))).toFixed(2) + ' ' + sizeName[e];
    } else {
        return '';
    }
}

export default Resize;

  然后再在index.js中引用它

let reSize = require('./src/resize.js');
reSize(18995);

  然后cd到该文件目录下,使用npm init 创建一个package.json。

package.json

发布npm包

  用已经注册好的npm账号添加该项目

npm adduser

  根据提示输入账号密码邮箱即可,然后发布。

npm publish

  使用该命令发布该npm包,发布完成后,进入npm个人中心就可以看到自己发布的npm包了。发布时出错可能是注册完npm账号未验证,如果遇到该问题,验证下邮箱重新发布即可。

publish

npm

获取npm包

  下面的就很熟悉了,在创建好的目录下,使用npm install 即可,我们获取一下刚刚创建好的包。

npm install file-resize

  测试一下:

import reSize from 'file-resize';

reSize(188567); // 184.14 K

更新npm包

  更新和发布一样,都是使用npm publish,但更新必须修改version,否则会报错。

总结

  学习了一下npm包的创建发布与更新,可以在以后写一些属于自己的npm包。只是简单的学习了一下,并没有系统的去做npm包的开发,npm包开发还包含单元测试等等。