用友云前端基础工程化能力整合

@GuoYongfeng 2017-09-21 06:04:55发表于 iuap-design/blog

用友云前端基础工程化能力整合

47601505972449_ pic

打造以 uba 为前端工程化能力的品牌技术体系,形成以核心能力core、插件服务plugins、配套开发服务三位一体的基础建设。

0.达成共识

  1. 形成体系化能力的共识。
  2. 对 plugin 概念的重新定义和认识。
  3. 优化设计思路,站在开发者使用的场景,提供最简的使用方式,提供简单而灵活的配置方案。

1.Core

工程初始化 & 下载:

  • uba-init
    • 能够快速初始化各种最佳实践工程、脚手架项目、开发框架以及其他仓库代码

开发过程:

  • uba-build
    • 对js(es6/es7/ts)、css(less/sass/postcss/autoprefier)、images(png/jpg/gif)、框架(react jsx/vue component/ng) 等资源的处理能力
    • 文件hash、合并打包、压缩优化等能力
    • 构建出不同版本的资源,产出的规范方便后期和服务端项目对接
  • uba-server
    • 支持本地server、hmr热更新、不同的mock方案、proxy代理能力。。。
    • mock方案支持和配套的在线mock服务对接,通过proxy代理实现
  • uba-publish
    • 资源发布系统,产出的静态资源能够和cdn或是后端工程对接
    • 内部发布到maven仓库,以jar/war包的形式,分版本发布部署

质量和规范:

  • uba-test
    • 基于 jest 整合提供测试能力,执行以 .test.js 或 .spec.js 结尾的测试文件
  • uba-lint
    • 基于达成共识的用友云前端开发规范,形成编辑器配置文件和eslint等配置文件,作为默认规范。

2. plugin 机制带来的无限活力

多核多插件机制:

  • uba-server-plugin-xx:uba-server 系列插件
  • uba-build-plugin-xx:uba-build 系列插件
  • ......

3. 配套服务,解放双手

  • 在线mock 服务
    • 可以基于easy-mock搭建一套在线mock服务
  • uba-doc
    • 现有的 tdoc 能力优化,品牌整合

结语

大业可成,哈哈~~!