Ads 组件库说明

216 阅读4分钟

Ads 组件库说明

一、解决什么问题

1.1 目前项目中存在的问题

  • 1.项目中ui还原度较低,不同页面相同功能写出的组件样式也不一样
  • 2.项目中有很多重复或类似的组件,增加代码体积,且大家不知道是否已有可复用的组件
  • 3.已有组件没有文档输出,使用就需要阅读代码
  • 4.已有组件A不满足当前需求,直接改了A的源码,导致其他使用A的页面出错,或者对A的改动违背了A的设计初衷(固定开发者)
  • 5.css公用样式不够完善, 组件内有重复功能的命名。
  • 6.从设计上看,产品要遵循一定的设计规范来保持统一性,没有可参考的网站,导致重复设计功能

1.2 沟通成本的增加

  • 设计:听说你们已经沉淀了 200+ 组件,能给我们看看有哪些组件吗?我们在下次设计的时候可以参考这些组件进行输出,减少沟通成本。
  • 前端:@所有人 这个组件我们库里面有吗?有,CascadeSelect。哦,怎么用的?有文档吗?.......看下源码吧。well...
  • 试想下如果今天你写了个巨牛的组件,复用性、接口设计和交互设计都非常棒,但是你有什么渠道能让大家一下子就知道吗,难道你要专门为此拉大家开个会?来今天占用大家1个小时的宝贵时间,介绍下我今天写的巨牛组件。

二、项目分析

2.1 可行性方案

构建热云Ads组件库

  • 减少项目代码体积
  • 统一管理组件, 规范代码,协同开发变得更高效规范

构建热云Ads组件库官网

  • 将实现的组件同步到官网中,这样每次设计师就可以看着已有的组件来生成设计稿,大大减少前端&设计师的沟通
  • 提供组件Demo事例,用法 ,代码(接口输出统一规范),文档,以及易错点
  • 提供时时编辑预览组件 ry-run

2.2 影响范围

  • 需要替换项目中对应组件

三、怎么叫做的好

  • 项目风格样式统一,减少设计的重复工作
  • ads项目组件覆盖率20%-30%

三、组件库的价值

  1. 满足当前业务需求的同时,输出广告行业的业务组件,是现有Antd、iView 等现成组件库没有的
  2. 非常轻松接入 微前端 框架,因为所有组件的发布构建都是标准的构建协议
  3. 就个人而言,拥有一套自己的组件库,可以让你的开发变得更高效,让你在行业里更有价值。
  4. 就团队而言,拥有一套团队的组件库,可以让协同开发变得更高效规范,让你的团队在公司更具有影响力。
  5. 就公司而言,拥有一套公司维护的开源组件库,可以让你的公司在行业里更具有影响力。
  6. 从业务上看,当业务达到一定规模后,很多地方需要复用
  7. 从设计上看,产品要遵循一定的设计规范来保持统一性
  8. 从开发上看,对开发效率要求高,需要快速迭代和响应开发需求
  9. 从维护上看,需要统一代码管理,需要达到更改一处全局响应的高可维护性

四、做了哪些事

Q1

  1. 构建组件库源码
  2. 官网,提供Demo事例,用法 ,代码,ry-run
  3. 贡献组件6个

Q2

  1. 预计增加15个左右组件(目前已完成5个)
  2. 提供每个组件需要注意的点(需要设计协助),有地方可查
  3. 源码库按需加载iview组件,减少代码体积
  4. 完善组件代码开发规范和流程,提交规范
  5. 根据ui完善一个模版(区块事例)

Q3

  1. 关于ui或者产品文档的输出,改为后台自行输入,更新到官网,需要前端使用egg或node搭建后台
  2. 待更新...