前端零代码开发实践:页面嵌套+逻辑连线0开发扩展组件,实现切换开关控制扇叶转动。能无代码封装扩展组件,有别于常规的web组态或低代码平台

前言:

官网:http://www.uiotos.net/

什么是 UIOTOS?  

  • 这是一款拥有独创专利技术的前端零代码工具,专注于解决前端界面开发定制难题,原型即应用
  • 具有页面嵌套属性继承节点连线等全新特性,学习门槛低,功能极为灵活。
  • 用户无需懂任何前端开发技术,简单了解使用规则,就能够按照业务需求,定制开发复杂的 WEB 应用。
  • 主要面向后端 / 算法工程师、硬件 / 电气工程师,以及产品经理、UI美术实施工程师等。
  • 适用于搭建基于物联网平台等的上层业务应用。实现前端开发不求人,项目交付快好省!

第 5 节:(实践)嵌套 + 连线 0 开发扩展组件,实现切换开关控制扇叶转动

2024-04-06 00:58

目标

本篇基于 WEB 组态常见的拖拽编辑、绘图和基础按钮组件,利用全新的页面嵌套和逻辑连线特性,无代码从 0 到 1 实现一个扇叶和开关组件。

其中扇叶能够点动控制转动的启停,开关可任意更换不同状态的图标,并且通过开关能操作扇叶的转动启停。各自初始和最终效果分别如下。

1. 扇叶组件

初始效果、最终效果

 

 

2. 开关组件

初始效果、最终效果

 

3. 开关操作扇叶

开关操作扇叶最终效果

1. 扇叶页面

总流程:新建页面 → 放入图片按钮 → 设置底板外观 → 放入工具函数、输入框、定时器组件 → 设置工具函数和定时器 → 连线串起各组件 → 检查组件属性嵌套继承设置。以下是详细步骤:

1.1 新建页面

在左边栏页面中,选择一个目录,右键单击新建页面,然后命名,即可创建一个新的页面。

1.2 放入图片按钮

  • 在组件栏中选择图片按钮,在空白区域点击下,图片按钮就会出现;
  • 然后在左边栏部件中搜索 “Fan”, 选中扇叶,复制扇叶的路径,在右边属性栏名称中粘贴扇叶的路径,即可变成扇叶的外观形式。

1.3 设置底板外观

选中底板,在右边图形(背景),去除背景颜色,再拖动底板改为和扇叶大小接近。

1.4 放入工具函数、输入框、定时器等组件

  • 在组件栏中选择定时器,在空白处点击下;
  • 再选择工具函数 , 在右边功能属性中改为透明传递,在页面空白处单击下;
  • 再次点击工具函数,在右边功能属性中改为基本数学计算,在页面空白处单击下;
  • 最后选择输入框在页面空白处点击下;
  • 然后把所有组件摆放至合适的位置。

1.5 设置工具函数和定时器

  • 在页面中,选中定时,设置 interval 为 “50”;
  • 再选择透明传递,在功能属性中设置输入组长度为 “1”,数值设置 “0”,勾选输出合并非覆盖
  • 然后再选择扇叶,在节点属性中,点击角度对应的链接符号,在弹窗中选择 form,点击确定,此时链接符号变为蓝色;
  • 再选择基本数学计算,设置输入组长度为 “1”,数值为 “0”,method 中选择减去(-),_value 设置数值 “1”;
  • 再勾选_reverse,最后选择输入框,在右边属性栏中勾选运行时不可见

1.6 连线串起各组件

  • 首先选择定时器右键交互连接指向透明传递,选择 exec
  • 再选择 output, 在点击透明传递右键交互链接指向扇叶,选择 rotation
  • 再选择 output, 再选中扇叶右键交互链接指向基本数学计算,选择 exec,点击确定;
  • 再选中基本数学计算右键交互连接指向输入框,操作输入框的 value,关联基本数学的输出 output
  • 再由输入框返向操作基本数学计算的输入 input, 关联输入框的 value 数值;
  • 最后选择输入框右键交互连接指向定时器,勾选 exec,再关联输入框的数值 value
  • 然后保存,点击运行,便可看到点击扇叶转动,再次点击扇叶停止。

1.6 检查组件属性嵌套继承设置

检查该页面组件属性是否继承,以便嵌套到其他页面可以修改组件属性值。

总流程:新建页面 → 放入图片按钮 → 设置底板外观 → 放入工具函数、输入框组件 → 设置工具函数 → 连线串起各组件 → 检查组件属性嵌套继承设置。详细步骤:

2.1 新建页面

在左边栏页面中,选择一个目录,右键单击新建页面,然后命名,点击确定,即可创建一个新的页面。

2.2 放入图片按钮

在组件栏中选择图片按钮,在空白区域点击下,图片按钮就会出现,然后在左边栏部件中搜索 “开关”, 选中闸刀开关,复制闸刀开关的路径,在右边属性栏名称中粘贴闸刀开关的路径,即可变成闸刀开关的外观形式。

2.3 设置底板外观

选中底板,在右边图形(背景),去除背景颜色,再拖动底板改为和开关大小接近。

在组件栏中点击工具函数 , 选择透明传递,在页面空白处点击下,再次选择组件栏中工具函数,选择数学计算,在页面空白处点击下,最后在组件栏中选择输入框在页面空白处点击,选择合适的位置摆放好。

2.5 设置工具函数

  • 选中透明传递,在左边部件中,搜索 “开关”,选择开关 (下),复制它的路径;
  • 再设置透明传递的输入组为 "2",在索引 "0" 处粘贴开关 (下) 的路径;
  • 然后再选择另外一个开关 (上),复制径,在透明传递右边属性栏中输入组索引 "1" 处粘贴开关 (上) 的路径;
  • 再选择页面中的基本数学计算,设置输入组长度为 "1”,索引 “0” 值为 0;
  • _method 选择减去(-),_value 设置数值 “1”,再勾选_reverse

2.6 连线串起各组件

  • 选择透明传递单击右键交互连接指向开关图标,操作开关的 path,关联透明传递的输入 input;
  • 再选择开关图标单击右键交互连接指向基本数学计算,选择执行 exec, 点击确定;
  • 选择基本数学计算单击右键交互连接指向输入框,操作输入框的数值 value,关联基本数学计算的 output 输出;
  • 同时再选择输入框单击右键交互链接指向基本数学计算,操作它的输入 input, 关联输入框的 value 数值;
  • 再选择输入框单击右键交互链接指向透明传递,操作透明传递的执行 exec 和 bindControlsVal,在 bindControlsVal 后面选择关联透明传递的数值 value
  • 选择输入框,在右边的属性栏连线操作修改 bindControlsVal 索引 2 对应的数值为 “0”;
  • 最后点击保存,预览。

2.7 检查组件属性嵌套继承设置

检查透明传递的输入数组和开关图标 path 属性是否继承设置。(当后面的链接图标为蓝色时,代表该属性由继承设置)。

3. 开关操作扇叶

总流程:新建页面 → 放入两个容器组件 → 分别内嵌扇叶和开关页面 → 连线串起两个容器组件并运行测试 → 修改容器继承的开关图标集属性 → 锁定继承属性配置→ 再次运行测试。详细步骤:

3.1 新建页面

3.2 放入两个容器组件

在组件栏中选择嵌套容器,在页面空白处拖动个框,再次选择嵌套容器,在页面空白处拖动个框。

3.3 分别内嵌扇叶和开关页面

  • 选中下面嵌套容器复制切换开关的页面路径;
  • 在右边属性栏 display 中粘贴 "切换开关" 的路径;
  • 同样的,选择上面的嵌套容器,复制 “扇叶启停” 的路径;
  • 在右边属性栏 display 中粘贴 "扇叶启停" 的路径;
  • 然后去掉两个嵌套容器的阴影启用。

选中闸刀开关单击右键选择交互链接指向扇叶,操作扇叶容器中的定时器 start 开始,关联闸刀开关容器中的输入框的 value 数值,点击确定,保存,再预览。

3.5 修改容器继承的开关图标集属性

在如下图位置可修改开关图标。

 

3.6 锁定继承属性配置

点击下图所示图标,可 form 绑定当前属性。

3.7 再次运行测试

点击下图所示图标,预览。

  • 选中开关组件,在左边部件中,选择暂停,复制此路径;
  • 在右边属性继承中分别在 “5-2 切换开关> 0>cbtn1” 中的 path 中粘贴暂停图标路径;
  • 在 “5-2 切换开关> 0 > 图标组” 中 input 索引 “0” 中粘贴暂停图标路径;
  • 同样的道理,粘贴开始图标的路径,然后点击后面的链接图标,选择 form,点击确定;
  • 然后保存,便可看到开关图片切换成其他的图标。

小结

本示例中嵌套和连线实现的功能和灵活性,远远高于 gif 等常规方式实现的动画显示和启停、切换控制。

于代码开发扩展组件相比,本示例中基于原始绘图和组件功能,0 代码实现进一步降低了工具的使用门槛,灵活性大大加强:将代码面向对象的开发思想(类和对象、继承和派生),在 0 代码组态编程中得以体现,当内置基础组件不满足要求时,可以像搭建页面那样搭建定制化的组件以扩展功能,满足个性化的需求。

以内置的开关滑动按钮(代码开发的)为例,操作和配置如下所示,背景颜色、文字等属性限定为组件原始支持的,无法超出其范围使用,除非升级组件本身。

本示例无代码搭建的开关组件,则支持任意切换开关状态下的图标,并且可以做到各种细节开放属性用于灵活配置。无代码搭建的开关组件 VS 内置开关滑动按钮视频展示:

实际使用中很多 “轮子” 组件有现成的,不一定非要自己从 0 开始去搭建,即便能够 0 代码实现,本示例主要是抛砖引玉,在细微的底层功能定制尚能组态方式无代码开发,相关特性完全可以用于上层搭建更为复杂的定制化应用。

UOTOS 基于图形编辑技术,提供了页面嵌套、属性继承、连线逻辑编程能力,结合物联网平台,可快速开发应用产品、交付复杂多变的智慧化项目。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/570164.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

AI 智能工具以及热门AI开源项目整理,包含国内中科院版GPT

AI 智能工具以及热门AI开源项目整理,包含国内中科院版GPT。 不用xx即可访问的镜像网站 https://chat1.yqcloud.top https://chat.bnu120.space https://chat.aidutu.cn https://hzdjs.cn/chatgpt https://chats.fenqubiao.com/zh 需要xx才能访问的网站 https://o…

金融时报:波场亮相哈佛大学并举办TRON Builder Tour活动

近日,波场TRON作为顶级白金赞助商出席哈佛区块链会议并成功举办TRON Builder Tour哈佛站活动,引发海外媒体热议。美联社、金融时报、Cointelegraph等国际主流媒体及加密知名媒体均对此给予了高度评价,认为本次大会对TRON Builder Tour活动具有里程碑意义,彰显了波场TRON致力于促…

spring security登录认证授权

spring security登录认证授权 是什么 Spring Security 主要实现了Authentication(认证,解决who are you? ) 和 Access Control(访问控制,也就是what are you allowed to do?,也称为Authorizat…

HTTP与SOCKS-哪种协议更适合您的代理需求?

网络代理技术是我们日常使用网络时必不可少的一项技术,它可以为我们提供隐私保护和负载均衡的能力,从而保证我们的网络通信更加安全和顺畅。而其中最主流的两种协议就是HTTP和SOCKS。虽然它们都是用于网络代理的协议,但在实际应用中却存在着一…

Java | Leetcode Java题解之第45题跳跃游戏II

题目&#xff1a; 题解&#xff1a; class Solution {public int jump(int[] nums) {int length nums.length;int end 0;int maxPosition 0; int steps 0;for (int i 0; i < length - 1; i) {maxPosition Math.max(maxPosition, i nums[i]); if (i end) {end maxP…

【网络安全】XSS漏洞注入,分类,防御方法

1.什么是XSS XSS全称&#xff08;Cross Site Scripting&#xff09;跨站脚本攻击&#xff0c;是最常见的Web应用程序安全漏洞之一&#xff0c;仅次于SQL注入。XSS是指攻击者在网页中嵌入客户端脚本&#xff0c;通常是JavaScript编写的危险代码&#xff0c;当用户使用浏览器浏览…

Linux——NFS网络文件系统

在生产环境中共享宿主目录可以用于集中管理账户 一、存储设备 DAS 是直连存储相当于移动硬盘 NAS 是网络文件系统&#xff0c;挂载后可以直接访问 SAN 存储区域网络 IPSAN 网线连接 共享的是设备&#xff0c;需要挂载后分区使用 FCSAN 光纤连接 二、服务的管理 1、安…

数据结构练习-线性表定义与基本操作

----------------------------------------------------------------------------------------------------------------------------- 1. 线性表是( )。 A.一个有限序列&#xff0c;可以为空 B. 一个有限序列&#xff0c;不可以为空 C. 一个无限序列&#xff0c;可以为空…

编译报错 - Missing trailing comma comma-dangle or Missing semicolon semi

一、comma-dangle规则&#xff1a; 这种错误通常出现在使用代码格式检查工具&#xff08;如ESLint&#xff09;时&#xff0c;具体是在JSON或者JavaScript对象、数组的最后一个元素后面缺少了逗号&#xff08;trailing comma&#xff09;。在某些编码标准中&#xff0c;要求在…

SS34B-ASEMI超低Low VF肖特基SS34B

编辑&#xff1a;ll SS34B-ASEMI超低Low VF肖特基SS34B 型号&#xff1a;SS34B 品牌&#xff1a;ASEMI 封装&#xff1a;SMB 最大平均正向电流&#xff08;IF&#xff09;&#xff1a;3A 最大循环峰值反向电压&#xff08;VRRM&#xff09;&#xff1a;40V 最大正向电压…

idea同步yapi插件

1、前言 yapi是一个很好的接口文档维护工具&#xff0c;其swagger功能&#xff0c;可将接口信息同步到yapi平台上&#xff0c;但是swagger的编写&#xff0c;大量入侵代码&#xff0c;也加大了开发工作量&#xff0c;目前调研了idea集成yapi同步工具&#xff0c;无需嵌入式编写…

echart图标区域背景

效果图&#xff1a; 代码实例&#xff1a; let option {calculable: true,legend: {orient: vertical,top: 10%,left: right},tooltip: {show: true,formatter: {a} {b} : {c} },xAxis: [{type: category,data: Array.from({ length: 12 }).map((a, index) > ${index 1}月…

MySQL、Oracle查看最大连接数和当前连接数

文章目录 1. MySQL2. Oracle 1. MySQL -- 查看最大连接数 show variables like max_connections; select max_connections; -- select * from performance_schema.session_variables where VARIABLE_NAME in (max_connections); -- select * from performance_schema.global…

DFS与回溯专题:二叉树的最大深度

DFS与回溯专题&#xff1a;二叉树的最大深度 题目链接: 104.二叉树的最大深度 题目描述 代码思路 设置两个变量&#xff0c;max来记录最大值&#xff0c;sum来记录路径的节点数量。利用dfs对二叉树进行搜索&#xff0c;遇到节点&#xff0c;则sum1&#xff1b;遇到叶子节点&…

【网络编程】网络编程中的基本概念及Java实现UDP、TCP客户端服务器程序(万字博文)

系列文章目录 【网络通信基础】网络中的常见基本概念 【网络编程】网络编程中的基本概念及Java实现UDP、TCP客户端服务器程序&#xff08;万字博文&#xff09; 【网络原理】UDP协议的报文结构 及 校验和字段的错误检测机制&#xff08;CRC算法、MD5算法&#xff09; 文章目…

大模型 AI 框架昇思 MindSpore 2.3.RC1 发布,训练、推理性能大幅提升,JIT 编译强化

经过社区开发者们几个月的开发与贡献&#xff0c;现正式发布昇思 MindSpore2.3.RC1 版本&#xff0c;通过多维混合并行以及确定性 CKPT 来实现超大集群的高性能训练&#xff0c;支持大模型训推一体架构&#xff0c;大模型开发训练推理更简、更稳、更高效&#xff0c;并在训推一…

Golang | Leetcode Golang题解之第46题全排列

题目&#xff1a; 题解&#xff1a; func permute(nums []int) [][]int {var (n len(nums)dfs func(vals []int) // 已选择数 排列为vals 后续回溯继续选择 直至选完ans [][]int)dfs func(vals []int) {//边界if len(vals) n {ans append(ans, vals)}//转移 枚举选哪个f…

Navicat和MySQL的安装、破解以及MySQL的使用(详细)

1、下载 Navicat Navicat 官网&#xff1a;www.navicat.com.cn/ 在产品中可以看到很多的产品&#xff0c;点击免费试用 Navicat Premium 即可&#xff0c;是一套多连数据库开发工具&#xff0c;其他的只能连接单一类型数据库 点击试用 选择系统直接下载 二、安装 Navicat 安…

wsl2 中docker安装完毕后无法正常启动

wsl2 中docker安装完毕后无法正常启动 1、背景2、目标3、环境4、原因4、操作5.1、查看配置5.2、 切换配置5.3、启动docker5.4、验证docker 1、背景 在win10中安装wsl2体验linux操作系统&#xff0c;按照docker官网步骤安装&#xff0c;安装完毕后面提示 $ docker ps Cannot co…

ChatGPT实战100例 - (18) 用事件风暴玩转DDD

文章目录 ChatGPT实战100例 - (18) 用事件风暴玩转DDD一、标准流程二、定义目标和范围三、准备工具和环境四、列举业务事件五、 组织和排序事件六、确定聚合并引入命令七、明确界限上下文八、识别领域事件和领域服务九、验证和修正模型十、生成并验证软件设计十一、总结 ChatGP…