betway西汉姆官网

股票代码: 300348
EN
betway西汉姆官网科技:企业级前端框架组件化实践
金融科技
2021.05.14

随着互联网的快速生长,, ,,,,,,web 营业也越来越重大和多元化,, ,,,,,,以前的那种前后端一起的方法越来越跟不上生长节奏,, ,,,,,,前后端逐步疏散,, ,,,,,,随之前端的使命也日渐变得主要起来。。。。。。


本文主要分享betway西汉姆官网科技 WEB 前端团队凭证营业场景特点研发的企业级前端框架组件化计划。。。。。。


组件手艺:高内聚低耦合

组件(component)的意义较量普遍。。。。。。软件工程里被翻译为“构件”。。。。。。构件是面向软件系统架构的可复用软件?? ? ??。。。。。。 构件可以是一个工具类(utils),, ,,,,,, 也可以是一其中心件(如:MQ)。。。。。。


早在2013年W3C提出了“Web Components”草案,, ,,,,,,随着前端web应用的迅速生长,, ,,,,,,泛起了React、VUE、Angular等主流的组件化开发框架。。。。。。在VUE中组件是可复用的 Vue 实例。。。。。。而VUE的插件手艺,, ,,,,,,提供了组件间依赖引用、无邪组装的可能。。。。。。本文实践计划,, ,,,,,,以VUE手艺为基础解说。。。。。。



组件化开发需要思索以下问题:

怎样以依赖方法使用组件?? ? ??

怎样包管拆分组件,, ,,,,,,整适时气概统一?? ? ??

怎样治理组件依赖版本?? ? ??

怎样解决组件(包括公共JS、CSS)依赖引入多次打包压缩问题?? ? ??


组件分类:基础组件和营业组件

企业内部要实现组件化开发,, ,,,,,,可以凭证自身营业现真相形,, ,,,,,,首先明确好“组件”的界说,, ,,,,,,告竣共识。。。。。?? ? ??山榧归为两大类,, ,,,,,,基础组件和营业组件,, ,,,,,,如下所示。。。。。。

 


各组件层级关系图如下:

 


总体设计

betway西汉姆官网科技的前端框架解决计划设计原则,, ,,,,,,主要以“开源低耦合”、“无邪组装”、“简朴快捷”等要害词为起点。。。。。。


开源低耦合

为阻止重复造轮子,, ,,,,,,减轻上手难度和学习本钱,, ,,,,,,充分复用现在开源手艺的优势和积累。。。。。。 会选择基于“开源框架”为起点,, ,,,,,,搭建前端框架。。。。。。


但同时思量框架焦点功效只管阻止对开源手艺的强绑定,, ,,,,,,增添中心层对开源组件举行包装,, ,,,,,,以抵达低本钱替换的目的。。。。。。


无邪组装

前端框架主要是对营业组件的积累,, ,,,,,,抽取企业内部普遍营业场景,, ,,,,,,沉淀各营业组件库。。。。。。各组件库是能够自力开发、依赖使用的。。。。。。除基础组件库可被其他组件依赖使用之外,, ,,,,,,只管阻止组件库间高度耦合。。。。。。


简朴快捷

凭证公司内部现真相形,, ,,,,,,前端框架服务于两方面的职员,, ,,,,,,一是非专疑习端职员(后端职员),, ,,,,,, 二是专疑习端职员。。。。。。


针对“非专疑习端职员”,, ,,,,,,需要思量“零JS”代码开发,, ,,,,,,以简朴设置方法快速对接后台接口,, ,,,,,,开发出页面功效。。。。。。


针对“专疑习端职员”,, ,,,,,,要提供统一区域级、页面级结构组件,, ,,,,,,固化样式,, ,,,,,,以最洪流平统一页面气概,, ,,,,,,镌汰相同治理本钱,, ,,,,,,快速协作开发。。。。。。

 

前端框架总体设计


如上图所示,, ,,,,,,前端框架基于VUE + Element UI等开源手艺为底座,, ,,,,,,以减轻开发职员的学习本钱,, ,,,,,,而前端框架支持整个应用系统功效的开发。。。。。。


按组件分类,, ,,,,,,前端框架分为了6大?? ? ??。。。。。。每个?? ? ??樽魑粤Φ墓こ绦嘉寮,, ,,,,,,?? ? ??樽约嚎梢员4嬉览倒叵担 ,,,,,,如:工具类和基础组件,, ,,,,,,作为最小的?? ? ??椋 ,,,,,,为其他?? ? ??樘峁┲С郑 ,,,,,,其他?? ? ??榈墓πВ ,,,,,,基于这两个?? ? ??榭。。。。。。

 

前端框架组件视图


基础组件(Base Components)

基础UI组件,, ,,,,,,主要指开源的ELement UI组件和一些算界说扩展的组件,, ,,,,,,如: 表单控件,, ,,,,,,表格,, ,,,,,,按钮等


工具类(Utils Components)

公共要领工具,, ,,,,,,包括常用的多组件共用的工具要领类


营业组件(Business Components)

为镌汰分类历程,, ,,,,,,且思量到现在基础营业组件抽取的很少,, ,,,,,,我们将营业基础组件和区域组件,, ,,,,,,统一归到此?? ? ??槔。。。。。。区域组件可以以为是从页面模板组件中抽取出来的小组件。。。。。。如: 盘问页面模板包括表单条件区域、工具栏区域和表格区域(包括分页),, ,,,,,,我们可以抽取出表单区域组件、工具栏区域组件、表格区域组件,, ,,,,,,每个区域组件主要借助slot插槽等机制,, ,,,,,,实现功效扩展


页面模板(Template Components)

页面模板是将特定的一些常用营业场景封装成模板。。。。。?? ? ??赏ü蚱拥纳柚茫 ,,,,,,实现页面营业功效,, ,,,,,,适用于后台或前端基础较弱的开发者


页面模板化,, ,,,,,,目的是实现80%常见页面功效由“模板+模板数据”天生,, ,,,,,,20%不可知足的接纳基于现有组件自界说开发方法开发。。。。。。示例如下:

 


后管框架(admin-Cli)

此?? ? ??槲岸丝蚣芴峁┝怂凶榧聚合的计划。。。。。。主要是针对后端治理系统而搭建的,, ,,,,,,包括了后台治理系统常见的功效,, ,,,,,,例如登录,, ,,,,,,路由菜单,, ,,,,,,结构,, ,,,,,,主题换肤,, ,,,,,,多语言切换,, ,,,,,,数据字典,, ,,,,,,元素权限控制等


插件工程(Plugin-Cli)

此?? ? ??楣πё榧插件化提供脚手架支持。。。。。。脚手架建设出来的前端工程,, ,,,,,,自带搭建好了组件开发规范目录结构,, ,,,,,,配套Markdown文档自动天生在线文档机制,, ,,,,,,组件开发调试运行机制等


前端框架在真实应用中可以应用于三方面:

1、开发插件应用: 基于插件脚手架工程,, ,,,,,,快速抢建和宣布插件到私服,, ,,,,,,供其他项目依赖使用


2、组件库依赖使用: 无论项目使用的开发框架是前端框架提供的脚手架工程,, ,,,,,,照旧原生vue脚手架工程,, ,,,,,,可以引入前端框架提供的营业组件库


3、后管框架使用: 前端框架提供一整体后管基础功效框架,, ,,,,,,可直接基于此脚手架工程开发。。。。。。若是后端职员,, ,,,,,,可以借助“页面模板”以JSON设置加后台接口数据驱动,, ,,,,,,“零JS”渲染出页面 ;; ;;;;;若是是前端职员,, ,,,,,,可以借助营业组件库提供的组件与页面模板“混淆开发”,, ,,,,,,既可JSON设置,, ,,,,,,又可使用原生VUE开发


接下来从betway西汉姆官网科技的两个应用场景看前端框架的详细实践。。。。。。


实践一:功效组件插件化拆分与组合

将公司各营业系统公共功效抽取出来,, ,,,,,,形成统一的组件,, ,,,,,,以便节约人力开发本钱和维护本钱。。。。。。使用前端框架的插件脚手架工程,, ,,,,,,可以快速搭建一组件化插件工程,, ,,,,,,将组件功效宣布成可以使用“模板依赖”的方法,, ,,,,,,组件搭配使用。。。。。。

 

上图中批注,, ,,,,,,基础应用平台的“机构选择”和“职员选择”功效,, ,,,,,,可以作为公共功效抽取出组件,, ,,,,,,宣布到私服,, ,,,,,,由“绩效系统”“内部资金转移定价”等系统使用。。。。。。 绩效系统中的“营业盘问治理”依赖“基础应用平台”的功效完成,, ,,,,,,内部资金转移定价中的“定价测算”也是依赖“基础应用平台”功效。。。。。。


通过前端框架提供的插件脚手架工程,, ,,,,,,可以将项目工程组件宣布成插件,, ,,,,,,上传到Nexus私有,, ,,,,,, 其他项目营业系统前端工程以“?? ? ??橐览怠狈椒ㄒ览凳褂。。。。。。


实践二: “零JS”开发页面

前端框架中保存大粒度的较量特殊的页面模板组件。。。。。。页面模板,, ,,,,,,是凭证内部营业场景相同交流,, ,,,,,,抽取出来的,, ,,,,,,以“页面”为整体的解决计划组件。。。。。。 页面模板,, ,,,,,,以JSON的方法设置前端页面功效。。。。。。

古板的VUE实现:

使用表单模板组件设置JSON实现:

古板的VUE实现除了要编写繁琐的HTML和组件标签外还需JS实现解冻提交弹框等事务逻辑。。。。。。而通过JSON形式只需设置表单控件类型,, ,,,,,,操作栏解冻按钮,, ,,,,,,表格以及初始化的接口地点即可轻松实现。。。。。。JSON模板内置数据初始化,, ,,,,,,数据提交等与后端交互逻辑以及多种事务联动功效。。。。。?? ? ??⒄叨伎赏ü蚱拥纳柚檬迪终庑┕π。。。。。。

   

 再从以下三个维度较量一下这两种开发模式:


从开发职员手艺熟练度来看,, ,,,,,,使用VUE开发,, ,,,,,,需掌握一定的前端知识。。。。。。而通过这种JSON设置开发,, ,,,,,,开发职员无需任何前端基。。。。。。 ,,,,,,真正实现开发使用”零门槛”。。。。。。


从开发时间来看,, ,,,,,,开发一个上文所提的盘问表格页面,, ,,,,,,使用VUE至少需要1小时左右,, ,,,,,,而使用JSON开发,, ,,,,,,时间可控制在10分钟内。。。。。。

 使用营业模板组件使用JSON设置开发前端页面模式,, ,,,,,,已使用于多个项目。。。。。。项目客户真实数据反。。。。。。和ü庵諮SON设置开发页面,, ,,,,,,可快速开发POC页面功效,, ,,,,,,与古板的页面开发模式相比,, ,,,,,,JSON设置开发至少节约一半人力和页面开发时间。。。。。。


总结

企业级前端框架具备的能力,, ,,,,,,首先需要一个基础框架为支持,, ,,,,,,其次以企业内部详细营业场景为起点,, ,,,,,,剖析、抽取、一连积累沉淀详细营业组件,, ,,,,,,团结统一规范约束,, ,,,,,,快速搭建、组装出营业系统的能力。。。。。。


金融科技
让中国金融科技 具有天下影响力
betway西汉姆官网科技更懂如作甚您的数字化转型赋能
地点: 深圳市南山区沙河西路深圳湾科技生态园一区2栋A座5层
电话: 0755-8616 8118
传真: 0755-8616 8166
【网站地图】【sitemap】