TaskBuilder前端组件简介

TaskBuilder支持的三种开发模式 TaskBuilder内,最简单的开发模式就是基于数据表单的零代码开发模式,这种模式将数据模型、后台服务和前端页面这三种元素统一合并到一个叫“数据表单”的文件里,只需要在这一个文件中配置填报和查询界面,就会自动生成对应的数据模型、后台服务和前端页面,而且界面设置非常简单易用,不需要任何编程基础,直接就可以上手操作。但相应地,该模式为了尽量简化操作,不支持配置复杂的前后端业务逻辑,也不支持自定义组件样式,所以,这种开发模式只适合开发一些简单的应用,不支持开发特别复杂的业务系统。1多层分离的低代码开发模式。 阅读详情

3.3.3.1前端组件的分类
前端页面是由众多组件层层嵌套构成的,这些组件是任讯信息自主研发的一套前端UI组件,称为tfp组件,这些组件根据其功能和特点又分为几大类,它们的继承关系如下图所示:
在这里插入图片描述

从图中可知,所有组件都是从一个名为Component的根组件继承过来的,然后分为不可视组件和可视组件,不可视组件就是在界面里不显示任何内容的组件,例如服务请求组件和计数器组件;可视组件就是在界面里会显示具体内容的组件,分为以下几种类型:
容器组件:是指可以在其内部放置其他组件的容器型组件,例如布局组件、面板组件、表单组件、选项卡组件等。整个tfp页面最顶层的组件就是页面(Page)组件,它也是容器组件,其他组件都是放在页面组件或其子组件中的,一个页面有且只能有一个页面组件。
表单输入项:用来显示或录入动态数据的组件,例如单行文本、单选、多选、下拉列表等组件,其中隐藏域组件实际也不在界面里显示任何内容,但是习惯上将其作为输入项放在表单里,用来存放一些临时性的数据,所以没把该组件放到不可视组件中;可以通过 组件编号.value 获取或设置输入项的值,通过数据绑定格式属性可以设置输入项在绑定后台数据时采用的格式。
图表:用来显示图形化的统计报表,包括折线图、柱状图、条形图、饼状图等;
其他可视组件:还有一些可视化组件,不属于上面这些类型中的任何一种,包括可编辑表格、树形组件、文本标签、甘特图等。
3.3.3.2前端组件的三种运行环境
前端组件的代码在整个生命周期中会分别运行在下面三种环境中:
设计时:在TaskBuilder的前端页面设计器内对组件进行设计时,组件处于设计时阶段,在该阶段,组件不能进行实际的互动操作,例如不能显示或录入数据,只能用前端页面设计器提供的相关功能对组件的样式、属性和事件等信息进行设置,设置的信息最后都统一按照JSON格式保存到扩展名为tfp的文件内。
编译时:在用户访问tfp文件时,如果该文件还没有编译,或者编译后,tfp文件又进行了修改,则任擎会将该文件编译为HTML格式的文件,然后返回给浏览器,以便浏览器加载显示,在这个阶段,前端组件处于编译时环境,任擎会使用组件的渲染器进行编译。
运行时:当页面在浏览器里显示时,页面中的所有组件就进入了运行时状态,在运行时,组件可以绑定后台服务查询到的数据,可以让用户进行点击、输入、选择等操作。
3.3.3.3前端组件的构成
一个完整的前端组件由以下几部分构成:
3.3.3.3.1元数据(MetaData)
用来定义每种组件具体都有哪些属性、默认样式、事件和方法,属性包括名称、说明、数据类型、可选值和默认值等,事件包括名称、说明、参数名称和类型等,方法包括名称、说明、参数名称和类型等。元数据相当于组件的数据结构,在TaskBuilder里选中组件后,通过元数据可以决定在右侧的属性和事件设置面板里具体要显示哪些属性和事件,在JS脚本编辑器里调用组件方法时,也是通过分析组件的元数据来决定具体哪个组件有哪些方法可以调用,以及需要传递哪些参数等,下图是图片组件的元数据内容:
在这里插入图片描述

3.3.3.3.2数据模型(DataModel)
这里的数据模型是指用来存储前端组件的属性、样式和事件等信息的JSON对象,与前面介绍的用来存储数据库表或视图信息的数据模型不是一个东西。在TaskBuilder里设置组件的样式、属性和事件后,设置的信息都会保存到该组件对应的数据模型对象内,然后在保存tfp页面时,会转换为JSON格式的字符串保存到tfp文件中,在前端页面设计器底部点击“TFP源码”可以看到页面内所有组件的数据模型的JSON格式的信息。在运行时,可以通过 组件编号.dataModel获得组件的数据模型信息,但不建议直接修改该变量的值,因为单独修改数据模型中的属性或样式值不会造成组件对应的HTML元素的变化,应该通过设置组件控制器对象的属性、样式或调用其相关方法来实现,因为执行这些操作时,不仅会修改数据模型里对应的属性或样式值,还会同步修改组件的相关HTML元素。
所有tfp组件的数据模型都有以下属性:
id:组件编号,类型为字符串,同一个页面里,组件编号不能重复;
type:组件类型,类型为字符串,例如Panel(面板组件)、Label(文本标签)、Button(按钮)等;
styles:组件的CSS样式设置,类型为JSON对象,里面的每个属性对应一个CSS样式。
如果是容器组件,则会多一个名为components的属性,类型为数组,里面是子组件的JSON对象。其他属性则根据组件类型的不同而不同,例如所有输入项组件都有value属性,表示输入项的值,数据表格组件有columns属性,用来设置表格的列等。
另外,如果组件设置了事件,则在组件的数据模型对象中,还会出现事件类属性。
点击前端页面设计器底部的“TFP源码”可以查看页面内所有组件的数据模型代码,下图是一个按钮组件的数据模型代码:
在这里插入图片描述

3.3.3.3.3控制器(Controller)
我们通常情况下所说的组件实际上就是指该组件的控制器对象,不管是在设计时,还是编译时或运行时,都需要使用控制器对象来设置组件的数据和控制组件的行为。
在运行时,tfp前端框架会为页面里的每个tfp组件生成一个对应的控制器对象,可以用组件编号作为变量名来访问该组件的控制器对象,通过该对象,可以访问或操作组件的以下信息:
值:所有输入项类型的组件都有一个名为value的特殊属性,称为组件的值,可以通过 组件编号.value 的形式获取或设置组件的值。
获取和设置输入项值的示例代码:
let txt = text1.value; //获取text1组件的值并赋值给txt变量
text1.value = ‘Hello’; //将text1组件的值设置为“Hello”
属性:是指给每种组件定义的一些参数,在TaskBuilder的前端页面设计器里选中组件后,可以在右侧的属性设置面板里查看和设置这些属性。有些属性是通用的,例如所有组件都有组件编号(id)、组件类型(type)这两个属性,所有可视组件都有CSS样式类和自定义CSS样式属性,所有表单输入项都有数据绑定格式、组件备注、输入提示、必填、只读、禁用等属性。其他属性则根据组件类型的不同而不同。属性基本上都是在设计时设置的,某些组件的某些属性只能在设计时设置,不支持在运行时修改,具体请查看组件的说明。
设置组件属性的示例代码:
image1.src = ‘/images/logo.jpg’; //设置名为image1的图片组件要显示的图片的路径
样式:是指可以控制组件外观显示的CSS样式设置项,例如宽度、高度、文字颜色、背景颜色、边框样式、边距等,在TaskBuilder的前端页面设计器里选中组件后,可以在设计器上部的样式设置面板里查看和设置这些样式。不可视组件不需要也不能设置样式。
设置组件样式的代码:
label1.css(‘color’, ‘red’); //将名为label1的文本标签组件的文字颜色设置为红色
事件:是指在页面运行的过程中,由浏览器或者用户执行的某个操作触发的、与各个组件有关的事件,例如页面内容加载完毕事件、按钮点击事件、表单提交后事件等。在TaskBuilder的前端页面设计器里选中组件后,点击右侧边栏里的“事件”选项卡,可以在此查看或设置组件的各种事件,在事件输入框中双击鼠标可以查看和编辑事件处理函数的具体内容,例如点击确定按钮后提交表单,表单提交完毕后关闭当前对话框等。事件一般不需要通过脚本手动触发,所以就不提供示例代码了。
方法:是指各种组件对外提供的各项功能,以便在页面脚本中调用,例如调用表单组件的submit()方法可以提交表单,调用数据表格组件的reloadData()方法可以重新加载表格数据。
获取或设置组件的值、属性和样式,可以调用组件的方法,
代用组件方法的示例代码如下:
form1.submit(); //提交表单组件form1中所有输入项的数据等等
3.3.3.3.4渲染器(Render)
是指用来生成组件HTML代码的JavaScript对象,可视组件都必须有渲染器,渲染器可以通过组件的数据模型里设置的属性、样式和事件等信息生成该组件对应的HTML代码。设计时会使用组件的渲染器动态生成组件的HTML代码并显示在页面中,编译时会使用组件的渲染器生成组件的HTML代码保存到整个页面的HTML文件中,运行时,正常不需要使用组件的渲染器,因为编译时已经把组件的HTML代码都生成了,但如果要使用tfp.new()方法动态创建组件,则也会用到组件的渲染器。
3.3.3.3.5样式文件
可视组件都有专门的CSS样式文件,用来定义组件内各个HTML元素的显示样式,有的组件还会针对深色背景和浅色背景提供两套CSS样式文件,以便针对不同的背景颜色提供不同的外观样式。
3.3.3.3.6资源文件
前端组件用到的图片、图标、以及第三方的css文件和js脚本等统称为组件的资源文件,这些文件属于辅助文件,不会编译打包到最终的HTML文件中,
在编译tfp文件时,会先用各个组件的渲染器根据自己数据模型里的信息生成整个页面的HTML代码,然后再将页面里所有组件的元数据、控制器和样式文件的代码全部打包压缩后放到该HTML文件中,这样,当浏览器打开该HTML页面时,就不需要再从服务器分别加载这些信息,可以实现页面的秒开。

TaskBuilder功能特性 目前,tfp组件采用的前端框架为jQuery,将来可能会支持VUE、React等其他框架,到时,如果要更换前端框架,整个页面不需要重新开发,只需要修改一下tfp页面源码中的框架类型即可,到时,任擎会自动编译成采用新框架的页面代码。简单的业务功能,通过可视化拖拽设计即可完成,如果前端有复杂的业务逻辑,可以在独立的代码编辑器内编写前端脚本,所有前端组件都封装成了JavaScript对象,在前端脚本内,可以用面向对象的形式获取或设置组件的属性,调用组件方法,处理组件事件。 阅读详情

相关推荐

TaskBuilder数据添加页面前后端交互原理解析

如果选择的是表单输入项,则字段值会显示为: req.输入项编号 ,表示在后台服务里执行数据添加操作时,该字段的值会从前端请求对象req里获取,因为表单在提交数据时,会自动将这些输入项的值放到req对象中发送给后台服务。在该界面中可以看到,里面有一条 调用组件方法 的语句,组件设置为form1,方法设置为提交数据,这样设置好后,当用户点击抽屉页顶部的 确定 按钮时,就会将表单里各个输入项的值全部放到req对象中发送给后台服务。这些语句都可以在左侧的语句库中找到,然后拖拽到右侧的业务逻辑编排区即可。

Nodejs_home的博客 892

taskbuilder低代码开发平台笔记(一)

后来我使用一台服务器作为远程服务端,mysql也安装好了,远程安装链接数据库失败,查到了一些方法得知,mysql需要配置远程访问才行,2.基于数据库,可以使用sqlserver,也可以使用mysql。这里使用mysql社区版本,最新版本下载【解压绿色安装包,运行配置向导,填写信息,开始制作表单系统。就此实验环境部署成功,后续在更新相关的实验笔记。1.平台程序下载:官网提供绿色版下载文件,【非推广应用,自己用的地代码开发笔记】mysql5.7.39社区版本。任擎低代码开发平台官网【

u012175909的博客 877

TaskBuilder低代码开发平台中如何设置组件的定位方式

如果在创建TFP页面时,定位方式选择的是绝对定位,则后续从组件库里拖拽组件到该页面上时,不管是容器组件还是非容器组件,新建的组件默认都会采用绝对定位,即鼠标在哪里松开,新建的组件就会插入到该位置的容器组件中,并显示在鼠标松开的位置,如果还需调整位置,可以继续用鼠标拖拽调整。其中,堆叠顺序(CSS样式名:z-index)用来确定组件在当前层叠上下文中的层叠级别,参数类型为整数,数值大的在上面,数值小的在下面,例如下图所示的a、b、c三个面板组件,就是按照堆叠顺序从小到大、从底到上的顺序显示的。

TaskBuilderIDE的博客 298

TaskBuilder低代码开发必须的三种文件—后台服务文件

在后台服务中引入的js模块必须满足CommonJS或ES6这两种js模块规范中的一种,否则无法正确引入,CommonJS是Node.js默认的模块规范,Node.js内置的系统模块、大部分npm模块和用TaskBuilder创建的后台服务都是采用的这种规范,有一些比较新的npm模块可能会采用ES6模块,具体哪个npm模块采用的什么规范请查看该模块的说明文档。上图对话框中的模块名称是指在当前后台服务中为引用的模块分配的一个变量名,可以和npm包的名称一致,也可以改成其他名称,开发者可以根据自身需要进行设置。

Nodejs_home的博客 880

TaskBuilder低代码开发工具

介绍一款新兴的低代码开发平台TaskBuilder TaskBuilder是一款企业级低代码开发工具,通过智能化和便捷化的功能,大幅降低了开发企业管理类软件的难度,不需要专业的软件研发知识,只要有一定的计算机操作基础,经过简单的培训,即可开发各种管理应用,让企业在面对快速变化的市场和管理需求时,能以较低成本迅速响应。 TaskBuilder低代码开发平台可以实现应用从创建、配置、开发、测试,到发布、运维、升级等完整生命周期的管理。可以按用户、部门或角色进行权限设置,可以精确控制应用的访问权限和具体操作权限。

tb2022的博客 8977

TaskBuilder简介

为此,TaskBuilder在底层架构层面,就进行了精心的设计,既可以通过组件化、向导化、可视化、模版化等多种手段,让软件开发变得更加简单,又通过采取多层分离的架构,将数据模型与业务分离、前端界面和后台服务分离、界面与逻辑分离,每一层都提供了功能强大的开发工具,可以进行细致精确的设计,而不是混杂在一起,遇到复杂的业务就无法灵活处理。而且,在此基础之上,为了最大程度地简化开发,又提供了基于“数据表单”和“快应用”这两种形式的零代码开发模式,可以满足不同技术基础的用户,大家可以根据自身需求进行选择。

Nodejs_home的博客 793

TaskBuilder前端请求后台服务的方式

这种方式表示可以直接对指定的数据表单的数据进行增删改查操作,实现原理和设置界面与上面的采用数据模型的方式基本一样,设置完后,在保存页面时,也会自动生成对应的tbs后台服务,区别就是这里操作的是数据表单自动生成的数据模型,而且,如果一个数据表单里有多个数据模型(一个主表,一个或多个子表),则在设置时,可以选择具体要对哪个数据模型进行操作。在该对话框中,需要先选择是添加还是修改操作,然后选择数据模型,再选择要操作的字段,并设置好字段的值,然后还可以设置请求参数,点确定,即可完成设置。

Nodejs_home的博客 881

TaskBuilder内设置任擎服务器

另外,有的开发者还部署了多套基于任擎的信息系统,为了方便访问,TaskBuilder提供了专门的服务器设置功能,可以在TaskBuilder内配置多个任擎服务器的信息,从而可以实现用一个TaskBuilder连接多个任擎服务器进行开发,但TaskBuilder同时只能连一个任擎服务器,如果要访问另外一个服务器的资源,需要在服务器列表里选择这个服务器进行切换。服务器名称:用来设置服务器的名称,以便在列表中查看和区分各个服务器,可以随意设置,但不能跟其他服务器重名,且只能是字母、汉字、数字和下划线。

Nodejs_home的博客 1489

TaskBuilder前端页面UI界面设计

为了方便大家快速设计前端页面的UI界面,TaskBuilder提供了可视化的UI界面设计器,在该设计器内,可以从左侧的组件库中拖拽组件到页面上实现组件的添加,TaskBuilder提供了几十种丰富的UI组件,分为容器组件、只读组件、基础输入项、扩展输入项、不可视组件、导入导出组件、统计图表和媒体组件等,每个组件都可以设置详细的样式、属性和事件,可以实现UI界面的高保真设计。(1)工具栏:在此提供了保存、另存、预览、刷新、复制、剪切、粘贴、删除、撤销、重做、上移、下移等按钮,点击即可执行对应的操作;

Nodejs_home的博客 617

TaskBuilder如何实现低代码开发?

TaskBuilder是一款企业级低代码开发工具,他通过智能化和便捷化的功能,大幅降低了开发企业管理类软件的难度,不需要专业的软件研发知识,只要有一定的计算机操作基础,经过简单的培训,即可开发各种管理应用,让企业在面对快速变化的市场和管理需求时,能以较低成本迅速响应。 TaskBuilder具有以下特点: 基础功能组件化:底层的基础功能组件化,应用开发像搭积木一样 开发规范体系化:遵循规范化的研发体系,保证应用功能界面统一 辅助开发智能化:提供常用表达式函数等,可以快速实现业务逻辑 多端适配自动化:电脑手

Nodejs_home的博客 584

低代码平台调研

低代码平台是一种软件开发工具,旨在帮助开发人员使用图形化界面和少量的编码来快速构建应用程序。它通过减少手动编写代码的需求,提供了一种更加高效、快速的应用开发方式。低代码平台的目标是减少开发周期、提高开发效率,并且使开发过程更加可视化和易于理解。它适用于快速开发原型、中小规模应用程序的开发以及业务需求较为简单的应用场景。原理是通过提供一些可视化的工具和组件,使人员快速构建应用程序,不需要编写大量代码。

厉力文武 2299

大数据BI可视化(Echarts组件)项目开发-前端vue环境搭建V1.0

如果想还原npm仓库地址,只需再把地址配置成npm镜像就可以了。切换成功,继续执行npm install即可。配置后可通过下面方式来验证是否成功。

2201_75311251的博客 679

TaskBuilder常见页面前后端数据交互原理解析

上面只是使用 #[js表达式] 这种形式实现的一个简单的示例,实际可以根据需求实现更复杂的功能,例如数据库里存储的性别值是0和1,0表示男,1表示女,则在列表里,就可以创建一个函数,传入性别值,然后在函数里判断,如果性别值等于0,就返回字符串:“男”,否则返回字符串:“女”,然后性别这一列的数据绑定格式就可以用 #[ 函数名( {性别字段名} ) ] 这种形式实现根据不同的值显示不同的内容。如果后面修改了这些参数,在保存该页面时,就会自动重新生成对应的后台服务文件,覆盖原来的文件。

Nodejs_home的博客 1032

TaskBuilder与VSCode、Eclipse有什么区别?

Visual Studio Code(简称“VS Code” )是Microsoft在2015年4月30日Build开发者大会上正式宣布一个运行于 Mac OS X、Windows和 Linux 之上的,针对于编写现代Web和云应用的跨平台源代码编辑器, 可在桌面上运行,并且可用于Windows,macOS和Linux。它具有对JavaScript,TypeScript和Node.js的内置支持,并具有丰富的其他语言(例如C++,C#,Java,Python,PHP,Go)和运行时(例如.NET和Unity

Nodejs_home的博客 1451

TaskBuilder主界面介绍

1、系统侧边栏:在整个界面的左侧显示了TaskBuilder的Logo图标和各种系统功能,包括数据源设置 、项目资源管理 、文件同步工具 、SQL执行工具 、后台服务测试工具 、登录后台管理首页 、进入社区 等;应用系统的代码都是保存在任擎服务器上的,TaskBuilder必须连接任擎服务器才能进行相关操作,且同一时间只能连接一个任擎服务器,默认连接服务器列表中的第一个服务器,可以打开服务器列表选择其他服务器进行切换,切换服务器后,区域4内的内容会随之发生变化。

Nodejs_home的博客 477

TaskBuilder低代码开发初体验——发布应用

至此,我们就完成了一个简单的“学员信息管理”应用的创建,大家觉得是不是很容易,但不要骄傲,这只是一个非常简单的应用,在我们实际工作中需要开发的应用要远比这个示例应用复杂得多,而且,上面只是介绍了如何按照向导一步一步完成应用的开发,并没有详细介绍这些功能具体的实现原理,还需要大家跟着本教程继续学习。在该窗口中,先在左侧图标列表中选择适合当前应用的图标,然后在右侧设置背景颜色,然后再点击“图标颜色”,选中白色,然后点底部的“保存”按钮,即可完成应用图标的设置。应用开发完,并经过测试没有问题后,就可以发布了。

Nodejs_home的博客 416

TaskBuilder低代码开发必须的三种文件——数据模型文件

TaskBuilder主要用来开发基于关系型数据库的信息系统,在开发的过程中,经常需要与数据库打交道,为了方便开发者对数据库中的表和视图进行统一的维护和管理,TaskBuilder提供了专门的数据模型设计和管理的功能,可以直接在TaskBuilder里设计表和视图对应的数据模型,然后同步到数据库,也可以将数据库中已有的表或视图导出为数据模型文件。在此可以设置数据模型具体由哪些表关联构成,哪个是主表,各个表之间的关联条件,视图有哪些字段,各个字段是属于哪个表的,另外,还可以设置查询条件、分组条件和过滤条件。

Nodejs_home的博客 670
上一篇: 前端页面基本信息设置
下一篇: TaskBuilder前端页面UI界面设计
Nodejs_home
博客等级 码龄7年 218粉丝 · 81原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值