业务无痛更换前端组件库

2020-05-20  本文已影响0人  cd2001cjm

前言

我一直在考虑一个问题。当下,前端组件库层出不穷,发展非常快速。但当我们在业务中使用某个组件库后。
业务与三方组件库就变成了紧耦合,试想如果几年后,有更优秀的组件库出现,我们想替换的话,就会有两个显著的问题:

那么,如何让业务代码在无感知的情况下,去进行组件库的替换呢?或者换句话:业务如何应对前端组件快速变化的风险呢。我们可以通过组件代理的方式来解决

组件代理

什么是组件代理:

  1. 不是重新造轮子,而是开源组件的整合
  2. 是组件名称的统一
  3. 是组件方法的固化
  4. 是业务页面的唯一依赖
image.png

通过图可以看到,我们让业务代码依赖组件代理,所有的变化都封装在代理里面,写后端的会比较了解,就是一个代理模式。通过组件代理,我们对业务提供统一的标签,统一的API。当我们要替换组件库的时候,只需要修改组件代理。业务代码更新npm包重新编译发布一次即可。

实现

我们可以定义一个pc-select.vue,在其中定义的props包含上图所有内容,并传递给组件


image.png

由于内容较多,就不一一列举

如果更换组件库

小结

其实这篇文章并没有太多的技术细节,更多的是一种思路。
目的就是业务代码能最小代价的享受技术进步的红利

上一篇 下一篇

猜你喜欢

热点阅读