发布自己的 javascript 库和 jquery 插件

先放一些基础的资源

旧版 jQuery 插件发布(已关闭):http://plugins.jquery.com/

npm 发布 jQuery 插件:http://blog.npmjs.org/post/111475741445/publishing-your-jquery-plugin-to-npm-the-quick

国内社区关于 npm 发布的文章:https://cnodejs.org/topic/5364dcde31a870830700b847

通过 Bower 发布包:http://bower.io/docs/creating-packages/#bowerjson

一、概述

一般而言,我们创建的 javascript 仓库可以通过两种方式发布到开源社区,就是 npm 和 bower,一般在 GitHub 上面创建了仓库之后,我们还可以将这个库推送到 npm 和 bower,以便大家可以通过 npm install 或者 bower install 直接通过包的名称进行下载。

不同的仅仅是 npm 是前后端都同样看中,而 bower 更偏重于前端的库。

我们可以看一下 GitHub 上面相关的 javascript 仓库,可以看到很多在代码里面是包含了 bower.jsonpackage.json 这两个文件的,这就是这个 JS 包在 bower 和 npm 注册信息,用户注册之后,可以通过配置号这两个配置,之后将其推送至 npm 或者 bower 的仓库。

其实相关的步骤,上面引用的一些链接已经说清楚了。下面简单描述一下自己的实践步骤:

二、NPM 发布实践步骤

2.1. 首先要有用户

登录凭据放在 ~/.npmrc 中,类似:

_auth = ZmlzaC1iYWxsOlBB????????
email = email@example.com
查看当前的用户:
$ npm whoami

如果已经有用户,这就会回显你的用户名。

注册用户
$ npm register

会要求输入用户名、密码和邮箱。

注册之后就自动登录了,可以关注 ~/.npmrc 文件的变化。

很简单,注册之后,就可以在 npm 网站上面用同样的用户名进行登录,你发布的 npm 包也会标记为此用户发布。

登录用户
$npm login

如果到了新的机器上面,或者需要更换别的用户,直接这样即可。

2.2. 生成包注册文件

进入你的 npm 包的根目录,选择 .git 所在的目录即可。

然后初始化这个包:

npm init

之后,就会逐步提示你输入信息,最终根据这些信息生成 package.json

这是我的 jquery.formdata.js 这个包的样例,更多信息可以参照上面引用的文章。

{
  "name": "jquery-formdata",
  "version": "0.1.3",
  "description": "jQuery Ajax with file/blob/base64Url fields supported.",
  "main": "jquery.formdata.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/fish-ball/jquery.formdata.js.git"
  },
  "keywords": [
    "jquery-plugin",
    "ecosystem:jquery",
    "ajax",
    "formdata",
    "multipart"
  ],
  "author": "fish-ball",
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/fish-ball/jquery.formdata.js/issues"
  },
  "dependencies": {
    "jquery": ">=1.5"
  }
}

2.4. 发布

完成之后,这样来发布你的包:

npm publish

如无意外就可以在 npm 的网站上面查找到你的包了。

2.5. 发布新版本

如果修改了版本,请按照 semver 的规范修改版本号,然后再 publish 一次:

三、使用 Bower 发布

其实过程是类似的,那这里只记录命令就好了:

使用 bower 的话不需要事先登录用户,用户基于 GitHub。

2.1. 初始化

bower init

2.2. 发布包

bower register example git://github.com/user/example.git

【转载请附】愿以此功德,回向 >>

原文链接:https://www.huangwenchao.com.cn/2015/09/javascript-publish.html【发布自己的 javascript 库和 jquery 插件】

发表评论

电子邮件地址不会被公开。 必填项已用*标注