发布专属自己的npm包

2018-02-24  本文已影响0人  TRYao

题记:一步步探索的过程非常有趣。

作为一名前端工程师,天天npm install别人的包,想不想自己写一个包让别人用呢?talk is cheap,撸起袖子开始干:

发布包

文章目录

  1. 编写模块
  2. 初始化包描述文件
  3. 注册NPM账号
  4. 上传包
  5. 安装包
  6. 管理包权限

编写模块

以helloworld为例,代码如下:

exports.sayHello = function () {
    return 'Hello,world';
}

保存在你的目标文件夹下,命名为hello.js

初始化包描述文件

NPM提供的npm init命令会帮助你生成package.json文件,以问答方式逐步填入选项,如下:


npm init

注册NPM账号

npm adduser
没有账号的话执行npm adduser,同时注意登录 https://www.npmjs.com 完成邮箱验证
有账号的话执行npm login

上传包

这一步的问题就比较多了
首先报错:no_perms Private mode enable, only admin can publish this module: hello


报错

Google找到原因,原来是因为我之前修改了NPM镜像源,执行下面命令即可:

npm config set registry http://registry.npmjs.org 

再次执行npm publish又出现报错:
You do not have permission to publish "hello". Are you logged in as the correct user? : hello


报错

Google之原因如下:

原因

意思就是我的包名已经被别人占用啦!
回到package.json,将"name"属性修改为"hello_tryao",再次执行npm publish终于成功:

成功

安装包

接下来你可以测试和安装自己的包啦,可以换一个目录执行

npm install hello_tryao

管理包权限

如果需要多人管理一个包,可以使用npm owner命令:

npm owner ls <package name>
npm owner add <user> <package name>
npm owner rm <user> <package name>
上一篇 下一篇

猜你喜欢

热点阅读