使用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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容