# UIOTOS一款支持页面嵌套的WEB组态 **Repository Path**: bison_1_bitdbsd11/uiotos-v1 ## Basic Information - **Project Name**: UIOTOS一款支持页面嵌套的WEB组态 - **Description**: UIOTOS支持页面嵌套、属性继承、节点编辑、业务逻辑连线,可用于无代码搭建工业组态监控、数据大屏展示,以及复杂业务系统WEB前端等。 其中页面嵌套能实现将功能进行封装,类似代码开发面向对象的原理,是UIOTOS中最具特色的能力,相对于市面上绝大部分的组态、零代码、低代码平台,UIOTOS是极少能媲美vue等代码开发实现定制化前端拖拽编辑工具。 - **Primary Language**: JavaScript - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: http://www.uiotos.net - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 11 - **Created**: 2025-08-11 - **Last Updated**: 2025-08-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # UIOTOS 一款支持页面嵌套的WEB组态 ## 产品优势 - 从界面原型→UI交互→接口调用→数据解析→预览发布,支持像设计原型那样,搭建复杂的前端应用! - 组件二次开发支持无代码(嵌套和连线)和代码开发(兼容现有JS WEB资源)两种方式。 - 可被集成到WEB页面,也可集成现有WEB页面。 - 可搭建工业组态、数据大屏、业务系统、移动端等多种类型的应用。 - 可配套IOTOS物联中台、APIJSON支持0代码应用后端,可搭建完整IoT数据应用或业务管理系统。 ## 特色功能 涵盖容器嵌套页面组件化、交互和业务逻辑连线编程、工具函数列表下拉及扩展、API接口组件可视化调用、无代码JSON数据解析、组件之间消息总线点对点及广播通信、跨机器复制粘贴、错误警告分析诊断提示等,具体如下: - 容器嵌套:提供容器组件包括常规嵌套、对话框、滚动页、Tab页签以及表格单元格、iframe等,支持页面之间无限嵌套,组件属性逐层多继承,支持页面组件化。 - 逻辑连线:提供连线指定交互事件触发任意组件之间属性赋值交换,包括嵌套继承到上层的属性。 - 工具函数:提供组件支持函数列表选择和扩展,有输入、输出、执行等公共属性和函数动态属性。 - 接口组件:支持HTTP、MQTT、WS、APIJSON等,实现接口请求和实时数据可视化组件方式配置。 - 数据解析:支持对任意复杂的JSON对象,接口返回还或表单数据,均能通过配置提取指定字段值。 - 消息总线,收发器组件发送和接收消息,支持跨页面、跨网页iframe的点对点或广播方式“无线”通信。 - 离线复制,跨浏览器、跨机器对任意配置好的图元组件进行复制粘贴,包括外观样式、接口配置等。 - 灵活布局,极为丰富的布局选项,包括缩放、吸附、比例、位置、页面滑动等,支持弹性自适应。 - 分析诊断,支持一键分析智能诊断,对连线逻辑、嵌套规则、属性配置、布局等进行警告错误提示。 ## 常规功能 - 常规编辑:框选、拖放、位置和尺寸对齐、图层上下调整、组合/解组、布局、收藏、预览、分享等。 - 基础绘图:绘制不规则图形、椭圆、矩形、弧形、管道等、贝塞尔曲线、拓扑图。 - 基础组件:输入框、下拉框、文本、文档编辑、表格、页签、对话框、按钮、勾选框、曲线、饼图、柱状图、视频、图片、进度条、日期时间等。 - 样式配置:字体、颜色、渐变色、透明度、虚线及样式、边框宽度、圆角弧度等。 - 资源管理:支持批量上传自定义资源文件和管理,包含图片、矢量图、iconfont图标、音视频等。 - 数据绑定:支持对任意组件的任意属性,下拉选择绑定物联网平台数据点(内置支持IOTOS物联中台),免接口对接数据实时同步。 - 二次开发:支持扩展导入基础组件,提供开发规范,兼容现有web资源,包括js函数库、echarts、vue、jquery、react等。 ## 打包部署 ### aiotos.js 进入到./uiotos/aiotos/目录,执行build.bat即可。 #### 源码备份 进入到./uiotos/aiotos/src/目录,执行backup,备份代码在最外层的uiotos-bak目录中,按照时间日期存放 #### 打包输出 进入到./uiotos/aiotos/src/目录,执行release,将会把space中的文件基本上除了.git的,会复制到uiotos-v1里面, 同时会对js进行混淆压缩,且确保源码项目的storage也是跟对外发布的storage是独立的git仓库,独立维护。 ## 启动方式 ### 使用 node 启动 ```shell node server/server.js ``` ### 使用 docker-compose 启动 首次启动需要拉取代码,耗时较长请耐心等待 ```shell # 拉取代码(其实只要 docker-compose.yml, Dockerfile, setup.sh 这三个文件即可,后续步骤会自动拉取代码) git clone https://gitee.com/uiotos/uiotos-v1.git # 进入目录 cd uiotos-v1 # 执行脚本 bash setup.sh # 构建 docker-compose build # 启动 docker-compose up -d # 关闭 docker-compose down # 删除 docker rmi uiotos-v1_uiotos ``` ### 使用 docker 启动 ```shell # 拉取代码 git clone https://gitee.com/uiotos/uiotos-v1.git # 进入目录 cd uiotos-v1 # 执行脚本 bash setup.sh # 构建 docker build -t uiotos-v1 . # 启动 docker run -d --restart=always --name=uiotos -p 8999:8999 uiotos-v1 # 关闭 docker stop uiotos # 删除 docker rm uiotos docker rmi uiotos-v1 ``` ## 视频教程 https://kvc4zvr4exw.feishu.cn/docx/Kk6Jd4ao7oJcOMxJm85cbVJwn5g