第八鱼

您现在的位置是:首页 > 产品经理 > 懂点技术

懂点技术

产品经理需了解前端人员为什么使用组件/UI框架

产品大秘籍 2021-02-01懂点技术
产品经理也要了解组件的妙用~ 特别是画后台原型的时候,有意或者无意的运用对应的组件,事倍功半。

产品经理可能需要了解第1个技术知识点:为什么前端人员要使用控件、组件、UI框架?使用的好处是什么?

1. 组件概念及其作用
2. 控件介绍
3. 前端UI框架介绍
4. 主流前端UI框架介绍
5. 个人不成熟的小建议
1. 组件概念极其介绍

开发过程中有时候页面代码量太大,逻辑太多或者同一个功能在许多页面均有使用,维护起来相当复杂。这个时候,就需要将相似逻辑、功能的代码进行组件封装,已达到组件通用性,增强代码可读性,维护成本也能大大降低。

组件是对数据和方法简单的封装,拥有自己的属性和方法。在页面中,数据源于HTML结构中的文字、图片、链接、按钮、表单元素等;CSS体现页面布局和风格;JS则体现了动作和功能,比如选中、显示、隐藏等等。

(对于html、css、js不了解的同学,请移步此篇 "带你重新认识身边的前端工程狮" 查看)

前端组件就是组成页面内容的零件,它是HTML结构、CSS样式、JS功能的综合体。注意,不是任何一段HTML标签都可以叫做组件。

前端开发经常用到组件有:按钮、表格、表单、消息提示、Banner切换、图片播放、导航菜单、选项卡、右键菜单、树形菜单等等。

(Element UI 按钮组件)第八鱼

(Element UI 消息提示组件)

举个详细的例子,大家都知道图片轮播效果大致可分为:上下轮播、左右轮播、显示/隐藏等效果。前端开发可以将这三种轮播方式功能封装成一个公共组件。

等到用的时候直接调用轮播组件,分别传入不同参数代表不同的轮播方式;同一个页面允许存在多个相同组件,互不影响各自的交互效果。组件的特点如下所示:

(1) 组件具有交互性和独立性,同一个页面允许存在多个相同控件,且互不影响各自的交互效果
(2) 组件的字段是可配置的,用户可根据自己需要自行定制。
(3) 组件拥有自己的字段、属性、方法和事件。

第三点我们还是用上面轮播例子来做说明:轮播是否自动切换、自动切换的时间间隔等属于组件属性;点击左右箭头进行图片切换的动作就是组件的方法;轮播切换过程中,展示当前某一张图片时会触发事件,通过这个事件能拿到该图片的相关信息。

组件化很大程度上降低系统各个功能的耦合性,并且提高了功能内部的聚合性。这对前端工程化及降低代码的维护来说,是有很大的好处的,耦合性的降低,提高了系统的伸展性,降低了开发的复杂度,提升开发效率,降低开发成本。

2. 控件介绍

控件跟组件的概念基本一致,但是控件的层次会更高一点,它是提供或实现用户界面功能的组件。从某种意义上来说,控件是组件的实现,组件是控件的原型,控件是带有交互效果的。

我们可以说控件就是组件,但是反过来就不一定,控件只是组件中具有实际控制交互功能的部分。

3. 前端UI框架介绍

组件库基于组件可以封装聚合形成,当然前端工作者也可以自定义组件,形成自己的组件库。

直白来说,组件库就像平时家里的工具箱,里面有起子、锤子、锯子,我们可以通过这些工具箱来创造玩具,甚至我们可以自己创造一些工具,方便我们日后创造玩具

前端UI框架:框架顾名思义就是一套架构,也是一套标准,会基于自身的特点向用户提供一套相当完整的解决方案,而且控制权的在框架本身,使用者要找框架所规定的某种规范进行开发

而库的控制权在使用者手中,其实框架和库关系还是很紧密的,他们以聚合的形式让前端人员在所要开发的应用中使用。

举个简单的例子,框架更像是我们玩的乐高,可以根据自己的需要想法,任意组装各式各样的模型。我们跟其他玩乐高的人,拿到手上的小模块都是一样的,我们很难自己去改变,相当于是一套使用标准

4. 主流前端UI框架介绍

UI框架一般前端人员用的比较多,开发过程中合理使用UI框架,能大大的缩短开发时间,减少代码量,使开发者更专注于业务和服务端,轻松实现界面开发,带来绝佳的用户体验。

(1) Bootstrap

Bootstrap 是由 Twitter 的 Mark Otto 和 Jacob Thornton 开发的,在2011 年8月在 GitHub 上发布的开源产品,用于开发响应式布局、移动设备优先的 WEB 项目。

好处是通过同一份代码快速、有效适配手机、平板、PC 设备。

中文网址:https://v3.bootcss.com/

(2)Element UI

主要服务于 PC 界面的中后台产品,由饿了么公司前端团队开源,官网:https://element.eleme.cn/#/zh-CN/theme

(3) View UI

原名iView,由是TalkingData发布,主要服务于 PC 界面的中后台产品,官网:https://www.iviewui.com/

(4) Ant Design

用于研发企业级中后台产品,官网:https://ant.design/index-cn

(5) Vant

Vant 是有赞前端团队开源的移动端组件库,其对内承载了有赞所有核心业务,对外服务十多万开发者,是业界主流的移动端(也支持微信小程序)组件库之一。

官网:https://vant-contrib.gitee.io/vant/#/zh-CN/

(6) iview weapp

iview weapp是TalkingData发布的一款支持于微信小程序开发的组件库。官网:https://weapp.iviewui.com/

优秀的UI框架真的是太多了,还有WeUI,是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信内网页和微信小程序量身设计的;layui:使用门槛极低、拿来即用、外在极简、组件丰盈等等,最后就不在一一举例其他框架了。

5. 个人不成熟的小建议

通常移动端界面,不管用不用UI框架,设计师都会出设计稿的。而对于后台界面来说,大多数公司,开发人员都会采用基于UI框架开发的后台开源代码,进行部署、二次开发。

这种情况我们设计好原型图,通常是不需要设计师出设计稿的。所以当你入职一家新公司的时候,建议一定要先了解一下前端人员使用的是什么UI框架,这样才能和他们达成共识。

举个例子,比如你负责后台业务,前端人员使用的Element UI框架,这时候最好去其官网了解每一个组件功能和交互。你在做功能出原型的时候,可以有意或者无意参照官方组件(有些组件真的太好用了),既能满足自己的功能交互,又能使开发人员拿来即用。

但是自己或者开发也不能过度依赖组件,因为功能场景各式各样,有些前端人员由于组件没有产品要求的功能,会搪塞说这不好做,做了等等。这时候一定不能被他们忽悠过去,让他们放弃组件使用,老老实实的自己开发相应功能。

到此本篇内容介绍完毕,欢迎留言交流!

每周一个技术小知识点,点击下方【阅读原文】查看更多技术知识点。

文章评论