开源可视化搭建平台-码良新功能组件封装
码良组件封装详解
最近码良迎来了一波新功能的上线,并毫无保留地继续进行了代码开源-赶紧star关注 。新上线的功能有桌面端页面制作
、”楼层模式
“、”正宗“布局组件
(容器组件)的开发能力、组件封装
、word 文档解析
、psd 解析
等平台功能和能力。
资源难得赶紧先关注,然后后续学习。
本文将为您详细介绍组件封装。
什么是组件封装
组件封装就是对具有上下层级关系的组件进行合并,隐藏内部细节,只保留顶层组件的过程。表现在组件树中,被封装的组件只能看到顶层组件,并以“小盒子”图标进行标识;表现在页面操作区,被封装组件的内部组件(子孙组件)不可被点击选中,只能对顶层组件进行操作。在对封装组件进行缩放操作的时候,子孙组件的大小被等比缩放、位置被线性变换。
操作方式
右键菜单操作
右键菜单可以在组件树和场景区中在组件上单击鼠标右键呼出,点击菜单中的"封装"指令即可对组件及其所有子孙组件进行封装,相反的,点击菜单中的“解封”(只有已封装组件才有该项)指令即可对该封装组件进行解除封装,还原为原本的树状结构。
组件树操作
比起右键菜单方式进行封装操作,组件树独有的双击操作更加便捷。在组件树上双击待封装组件可以快速进行封装操作;在组件树上双击已封装组件可以进行快速解除封装操作。
使用场景
组件封装看似简单,带来的改变却是多重的。
优化页面结构
通过对整个组件树不同功能块合理划分,然后进行分别封装,页面结构变得简单清晰。
功能抽象,配置集中
码良具有强大的脚本编辑能力,可以通过脚本来接收用户配置、控制组件行为、串联业务逻辑。但是,如果不能合理使用脚本,尤其是如果开发者对用户配置不进行集中管理,会造成使用者面对散落到各个组件的自定义配置无从下手。有了组件封装功能,开发者在进行模板页面的开发时,通过合理划分功能块,将同属一个功能的局部组件们进行封装,同时将自定义用户配置编写在该功能块顶层组件上,内部组件通过“数据总线“来获取用户配置参数,实现了功能抽象、配置集中,使用者不用再面对复杂的页面结构和不知道去哪找的众多配置项。
权限控制
实际使用中,还有一种情况,由于页面结构过于复杂,页面模板使用者(通常是缺乏专业技术能力的运营人员)因为缺乏足够的了解而随意增减组件或调整组件位置等,造成页面功能被破坏,组件封装过后,一方面,运营通过集中配置对页面进行配置,降低认知难度。另一方面,可以通过禁止解除组件的封装来阻止对功能块内部的修改,虽然目前码良并没有实现根据用户职业角色来禁止解除封装功能,但是封装操作仍能使得组件被破坏的难度加大,一定程度上保证了页面功能的完整性。
组合组件
封装后的组件仅限于当前页面复用(复制使用),那么有没有一种方法使封装组件变成普通组件一样,无限制的在其他页面使用呢?答案当然是有,组合组件就是专门干这个的。
如图,通过类似前面组件封装的做法,打开右键菜单,点击”另存为组合组件“指令,按提示然后输入必要的信息,就可以将这个组件功能块存储到服务器,供他人使用了。
看到这里你也许会奇怪,组合组件和组件封装似乎没有什么关联。实际上,合成组件生成时,会自动进行组件封装,因此在其他页面使用了合成组件以后,在组件树中会看到一个标有小箱子图标(封装的标识)的组件。
支持我们
开源项目需要的是持续地坚持,而我们坚持的动力当然也来自于你们的支持 来都来了,加个关注再走吧
项目代码:https://github.com/ymm-tech/gods-pen
项目代码(国内镜像):https://gitee.com/ymm-tech/gods-pen

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
架构设计 | 分布式系统调度,Zookeeper集群化管理
本文源码:GitHub·点这里 || GitEE·点这里 一、框架简介 1、基础简介 Zookeeper基于观察者模式设计的组件,主要应用于分布式系统架构中的,统一命名服务、统一配置管理、统一集群管理、服务器节点动态上下线、软负载均衡等场景。 Linux下Zookeeper单节点安装 SpringBoot整合Zookeeper中间件 2、集群选举 Zookeeper集群基于半数机制,集群中半数以上机器存活,集群处于可用状态。所以建议Zookeeper集群安装为奇数台服务器。在集群的配置文件中并没有指定Master和Slave。在Zookeeper工作时,是有一个节点为Leader,其他则为Follower,Leader是通过内部的选举机制临时产生的。 基本描述 假设有三台服务器组成的Zookeeper集群,每个节点的myid编号依次1-3,依次启动服务器,会发现server2被选择为Leader节点。 server1启动,执行一次选举。服务器1投自己一票。此时服务器1票数一票,未达到半数以上(2票),选举无法完成,服务器1状态保持为LOOKING; server2启动,再执行一次选举。...
- 下一篇
springdata mybatis mini 版本 2.2.2 更新,简化 mybatis
github地址:https://github.com/VonChange/spring-data-mybatis-mini gitee 地址:https://gitee.com/vonchange/spring-data-mybatis-mini 更新日志 支持 LocalDateTime LocalDate LocalTime jdk8 的日期格式 更改 jsqlparser 依赖,避免依赖冲突 简化动态 sql 方式,改为自定义的 ognl,提高性能,统一写法 特性 抛弃繁琐的 xml,只使用 mybatis 模版引擎即动态 sql 能力,sql 写在 markdown 文件里,便于书写和阅读 底层 jdbc 使用 spring jdbc 简化 mybatis 动态 sql 写法,比如: {@and id in idList} 等于 <if test="null!=idList and idList.size>0"> and id in <foreach collection="idList" index="index" item="item" o...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS8编译安装MySQL8.0.19
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS关闭SELinux安全模块
- SpringBoot2整合Redis,开启缓存,提高访问速度