背景
职能组有几个项目都是用同样的前端技术栈,部分相同业务功能的可以抽取出来作为统一维护的模块使用。
诉求
- 使用 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。
网友评论