使用npm发布属于自己的npm包

文章导航

×
  1. 1. 注册npm账号
  2. 2. 生成目录
  3. 3. 报错
  4. 4. 发布
  5. 5. 安装

入门前端的你是否用过node中的npm包管理,一个命令 npm install xxxx --save-dev 就可以把你需要的模块自动下载了。再也不用下载文件移到当前目录,这么费时费力的事情当然是交给工具来处理。毕竟作为前端er还得要写代码研究新技术。这样的好处是不用在担心代码的版本问题,更加智能化可以通过命令在任何设备上安装你所需要的模块的所需版本

本文示范做了一个自己开发的模块,可通过如下命令安装即可获取

1
2
npm install jackieli-test-node --save-dev
cnpm install jackieli-test-node --save-dev

注册npm账号

想要使用npm进行包管理,有两种方案,一种是使用npm官方,即https://www.npmjs.com/, 注册你自己的账号然后进行管理,但是如果不使用私有包的话,你的代码是暴露的,如果是企业内部的私有包,不想对外暴露,避免潜在的风险,那么就必须使用私有包管理,不过,是要交保护费的,虽然也不多,如果你连保护费都不想交的话,那么也有办法,搭建私有npm服务,国内比如cnpm,或者使用npm官方提供的 On-Site,都可以搭建企业内部的私有npm服务,但是我可以在这里给大家提个醒,如果你真的要自己搭建私有npm服务,那么你准备好接受各种折磨,让我偷乐一会儿……

生成目录

1
2
3
mkdir npmjsTest //创建目录
npm init //init packeage
touch index.js //发布的文件

touch.js中写入如下内容

1
2
3
4
//touch.js
exports.sayHello=function(){
    return "Hello,lilidong.cn";
  };

好了到填坑时间了。我们运行

1
npm publish

如果你的学习步骤没啥问题的话,应该会出现一个403错误

报错

出现这个错误有可能是三个原因或者一个或者多个的组合:

1.package.json 中name字段和已发布的包重名 改名即可

2.你使用了代理 如淘宝镜像来改变了发布地址

不着急,我们一个个来解决就可以
这个问题是因为使用了代理镜像导致的 可以把你的地址修改过来例如:

1
2
npm config set registry http://registry.npmjs.org (http)
npm config set registry http://registry.npmjs.org (https)

3.你没有权限来发布 你的身份验证

1
npm login

发布

最后解决上面的错误后,发布成功的时候的状态可以在网站上看到你的更新记录

1
npm push

安装

1
2
npm install jackieli-test-node --save-dev
cnpm install jackieli-test-node --save-dev

我们就可以发挥我们的创造力,利用它做一些有趣的事情,快去实现你的想象吧,可以自己开发一些自定义配置的脚手架工具供开发团队里的组员使用或者任意开发者使用


版权声明: 本文章采用 知识共享署名 2.5 中国大陆许可协议 进行许可,欢迎转载,但转载请注明来自李立冬博客,并保持转载后文章内容的完整。本人保留所有版权相关权利。
本文链接:http://www.lilidong.cn/2017/04/12/使用npm发布属于自己的npm包/

分享到: 更多