前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >发布npm包

发布npm包

作者头像
wade
发布2020-04-24 10:38:44
6280
发布2020-04-24 10:38:44
举报
文章被收录于专栏:coding个人笔记

Npm包管理器不用多讲,用过三大框架的应该都用过。今天讲一下怎么发布自己的npm包。

首先建一个文件夹,然后命令工具进入这个目录,执行npm init:

name 项目名称

version 项目的版本号

description 项目的描述信息

entry point 项目的入口文件

test command 项目启动时脚本命令

git repository 如果你有 Git 地址,可以将这个项目放到你的 Git 仓库里

keywords 关键词

author 作者

license 项目要发行的时候需要的证书,可忽略它

执行完毕生成package.json文件,打开就能看见这些信息。

因为我们默认的入口文件,所以在当前目录新建index.js,然后发现只能用index.js,package.json改了main的值也不行,配置文件的这个应该是只能用于webpack。

查看了很多包,发现没有多少人会直接把包的功能都写在index.js里面,应该是出于拓展性考虑。

所以这边的目录是这样的:

跟随大流使用lib文件夹,我这个包打算集成一些小功能,比如地址截取、cookie、日期转化等JavaScript功能,index.js就一句话:

module.exports = require('./lib');

然后其他操作都放在lib文件夹里面,这样就可以增加很多js文件,然后统一都集合到index.js里面,拓展性很强。还有要注意的就是lib里面暴露的也要是index.js。

Lib里面index.js我写了一个地址截取的方法:

代码语言:javascript
复制
export const urlCut = (key) => {
    var reg = new RegExp("(^|&)"+ key +"=([^&]*)(&|$)");
    var r = window.location.search.substr(1).match(reg);
    if(r!=null)return  unescape(r[2]); return null;
}

写好之后放到项目的node_modules,然后

代码语言:javascript
复制
import { urlCut } from 'w-collect';
console.log(urlCut);

验证是否可用,可用的话就准备发包。

Npm账号要自己去申请,在我们项目目录打开命令行:

Npm login

然后就登录,这边注意输入密码的时候是看不见的。

接着就是发布:npm publish

发布完成去npm官网搜索你自己的包,我发布的是wade-tools,可用下载,但是没有其他任何简介,暂时都没有写。

这边提一下,发包不超过24小时可以撤销发布的包,要是只是测试尽量撤销,然后不能再用这个名字发布。发包还可能出现一些错误,因为本人只遇见没有验证邮箱的错误,所以就不整理了。

(完)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-10-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 coding个人笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档