使用Babel来发布npm模块

背景

职能组有几个项目都是用同样的前端技术栈,部分相同业务功能的可以抽取出来作为统一维护的模块使用。

诉求

  • 使用 ES6 来编写。
  • 运行于浏览器/webview上,需要兼容 ES5 。

组织

构建

模块源码 -> Babel -> 发布 -> 本地NPM

发布

修改 main 入口

{
  "main": "./distribution/index.js",
   "scripts": {
     "build": ...
   }
}

告诉 npm 忽略文件

配置 .npmignore。一般我们忽略 src 目录。
需要注意的是,如果没有配置 .npmignore,npm 会使用 .gitignore

发布

编写 package.json 脚本,如:

"scripts": {
  "build": "babel-cli --preset xxx",
  "prepublish": "npm run build"
}

然后发布:

npm publish ./  

其他

  • 使用 jest、chai、mocha 等来编写单元测试。
  • 发布到 npm,指向 GitHub,配置 Webhooks、Integrations 和 Services。

参考

How to Build and Publish ES6 npm Modules Today, with Babel

你可能感兴趣的:(使用Babel来发布npm模块)