平台简介
- 技术框架:.NET8 + Redis + MySql/SqlServer/Oracle + Vue2/3 + Element-UI/Element-Plus
- 平台始于2014年(基于Avalon.js),2018年使用Vue重构,于2024年10月29日开源
- 试用地点:https://microi.net
- Gitee开源地点:https://gitee.com/ITdos/microi.net
- GitCode开源地点:https://gitcode.com/microi-net/microi.net/overview
前端V8函数列表
- 前端V8引擎代码与服务器端V8的编程语言均为Javascript语法。
- 前端V8引擎支持完整ES6语法
- 前端V8引擎集成了很多函数直接通过http调用后端接口,与V8.Post()写对应的接口地点效果一样。
- 前端V8引擎代码在前端执行,如果直接通过调用服务器端的低代码平台通用增编削查接口,前端V8事件不会执行(服务器端V8事件会执行)。
V8.Form
访问当前表单字段值
例:var name = V8.Form.UserName;
如果是下拉框组件,设定了绑定显示字段,则可以是:V8.Form.字段名称.显示字段
V8.OldForm
访问当前表单修改前字段值
例:var oldName = V8.OldForm.UserName;
V8.FormSet
给当前表单字段赋值
例:V8.FormSet(‘UserName’, ‘张三’);
也可以使用常规js写法(只不外在某些特殊情况下可能会不见效):V8.Form.UserName = ‘张三’;
V8.Field
访问当前表单字段属性
例:var isReadonly = V8.Form.UserName.Readonly;//UserName字段当前是否是只读
包罗属性:Name、Label、Config、Data(绑定数据源)、Readonly、Visible、Placeholder等等
V8.FieldSet
给当前表单字段属性赋值
例:V8.FieldSet(‘UserName’, ‘Readonly’, false);//设置UserName字段为只读
V8.FormOutAction
获取离开表单的范例,可用于离开表单、提交表单后V8引擎代码中做为判断,可能的值:Update/Insert/Close/Delete
V8.FormOutAfterAction
获取离开表单后的范例,可用于离开表单/提交表单后V8引擎代码,可能的值:Insert/Update/View/Close
V8.FormSubmitAction
表单提交范例(Insert/Update/Delete),可在“表单提交前V8引擎代码”中赋值V8.Result = false;以阻止表单提交。
V8.FormMode
获取当前Form打开的模式,可能的值:Add(新增)、Edit(编辑)、View(预览)
V8.LoadMode
当前Form的加载模式,要么为空,要么值为Design(string,设计模式),特别注意一些事件中如果使用了V8.FieldSet更改了字段属性,必要判断V8.LoadMode == 'Design’时不执行,否则生存表单设计后会持久化生存字段属性。
V8.TableRowId
获取当前Form的Id,也可以使用V8.Form.Id
V8.KeyCode
键盘事件V8可获取键盘的code值,如Enter键对应13
- if(V8.KeyCode == 13){
- V8.Tips('您已经按了Enter键!');
- }
复制代码 V8.TableId、V8.TableName
获取当前DIY表的Id、Name
V8.EventName
前端V8事件名称,在全局V8引擎代码中比力好用,可能的值:
FormTemplateEngine:表单模板引擎
TableTemplateEngine:表格模板引擎
OpenTableBefore:弹出表格前事件
OpenTableSubmit:弹出表格提交事件
FieldOnKeyup:文本框键盘事件
FormOut:离开表单事件(指表单提交后)
FormSubmitBefore:表单提交前事件
FormIn:进入表单事件
FieldValueChange:字段值变更事件
BtnFormDetailRun:详情按钮V8按钮
V8BtnLimit:V8按钮是否显示事件
V8BtnRun:V8按钮执行事件
TableRowClick:表格行点击V8事件
PageTab:多Tab页签V8事件
WFNodeEnd:流程节点竣事V8事件
WFNodeStart:流程节点开始V8事件
V8.CurrentToken
当前登岸身份token
V8.TableModel
获取当前表的对象,内里包罗了Id、Name等表信息。
V8.ThisValue
访问下拉框选择后的值对象,如V8.ThisValue.Id
V8.Tips
右下角弹出消息提示,用法:V8.Tips(msgContent, true/false, time)
msgContent为消息内容
true为成功消息(1秒后消散),false为错误消息(5秒后消散)
time可传入提示框多少秒后消散
V8.CurrentUser
访问当前登岸用户信息
例:V8.CurrentUser.Id/Name/Role/Dept等等
V8.Post
- //发起ajax请求,常规用法,自带token,默认Form Data参数格式(非Request Payload)
- V8.Post('api url', { Id : 1 }, function(result){
- if(result.Code == 1){ ... }
- })
- //完整用法
- V8.Post({
- url : '',//接口地址,必传。
- data : {}, //接口参数
- dataType : 'json', //默认空(Form Data),可选json(Request Payload)
- header : {}, //可选参数
- success : function(result){ }, //请求成功的回调函数,常用参数。
- fail : function(result){ }, //请求失败的回调函数,如接口报错404、500,可选参数,也可传入error,与fail一致。
- });
复制代码 V8.Get
发起ajax哀求,V8.Get(‘api url’, {}, function(result){})
V8.ChineseToPinyin(chinese, fullPyLen, type)
中文转拼音
fullPyLen: 2(默认),前几个字全拼音;type : 1 驼峰(默认),2全大写,3全小写
V8.RefreshTable({ _PageIndex : -1 })
革新表格数据列表,_PageIndex传入-1表示跳转到最后一页。
一样平常用于页面更多按钮、行更多按钮等革新当前表格。
注意与【V8.TableRefresh】不同的是它是革新当前主表单内里的子表格(将来会优化函数命名)。
V8.Router.Push(url):页面跳转
V8.Window.Open(url):打开新页面
V8.OpenForm(formModel, type)
打开表单,type:‘View’/‘Edit’/‘Add’,如在[行更多V8按钮]事件中:V8.OpenForm(V8.Form, ‘Edit’)
V8.OpenFormWF(formModel, type)
打开带流程信息的表单。(目前是获取此数据对应的最后一个流程)
V8.TableRowSelected
获取已选择的行数组,每行包罗了所有数据
V8.SearchSet
表格Tabs设置搜索条件,如:V8.SearchSet({FieldName : value, FieldName2 : value})
2024-12-14新增可以传入_Where条件,用法:V8.SearchSet([{ Name : ‘Age’, Value : 18, Type : ‘>’ }]);
V8.SearchAppend
表格Tabs追加搜索条件,如:V8.SearchAppend({FieldName : value, FieldName2 : value})
2024-12-14新增可以传入_Where条件,用法:V8.SearchAppend([{ Name : ‘Age’, Value : 18, Type : ‘>’ }]);
V8.AppendSearchChildTable【建议使用V8.OpenTableSetWhere】
弹出表格的[弹出前事件V8代码]中为表格指定搜索条件,如:V8.AppendSearchChildTable(V8.Field.XuanzeGLSP, { ShangpinLXZ: ‘1’});
V8.OpenTableSetWhere
弹出表格的[弹出前事件V8代码]中为表格指定搜索条件
如:V8.OpenTableSetWhere(V8.Field.XuanzeGLSP, [{ Name : ‘ShangpinMC’, Value : ‘商用直饮机’, Type : ‘Like’ }]);
V8.IsNull(value):判断某个值是否为空
当值为null、undefined、‘’(空字符串)、‘null’(null字符串)、‘undefined’(undefined字符串),均返回true
父表中对子表操作:
- V8.TableSearchAppend(V8.Field.子表Name, {FiedlName : value, FieldName2 : value})
- V8.TableSearchSet(V8.Field.子表Name, {FiedlName : value, FieldName2 : value})
- V8.TableRefresh(V8.Field.子表Name, { _PageIndex : -1 })
- _PageIndex传入-1表示跳转到最后一页。(注意与【V8.RefreshTable】不同的是它一般是用于模块引擎中行更多按钮、页面更多按钮刷新当前表格,将来会优化函数命名)。
复制代码 V8.FormSubmit
提交表单。
V8.FormSubmit({CloseForm:true, SavedType:‘Insert’, Callback : function})
CloseForm:是否关闭Form表单;
SavedType:生存表单后的操作Insert/Update/View
Callback:回调函数
子表中对父级操作:
V8.ParentForm:访问父级表单所有字段
支持在子表的子表中,使用V8.ParentForm.ParentForm对父表赋值。
[已废除]V8.ParentFormSet(‘字段名’, ‘值’):给父表单某个字段赋值
请使用V8.ParentForm.FormSet(‘字段名’, ‘值’)
V8.AddSysLog
新增日记
例:V8.AddSysLog({Title : ‘库存同步’, Type:‘SyncStock’, Content:‘张三调用了库存同步接口,同步后库存为100。’)
参数值均为自定义。
V8.ReloadForm:重新加载当前表单
例:V8.ReloadForm({Id : ‘xxxx-xxxx-xxxx’}, ‘Edit/View’);//以编辑或预览模式重新加载当前表单
V8.HideFormBtn
隐蔽编辑/删除按钮
V8.HideFormBtn(‘Update/Delete’):
V8.HideFormTab(tabName)
隐蔽某个表单Tab标签页,用法:V8.HideFormTab(‘tabName(在表单属性中设置的Tab名称)’)
V8.ShowFormTab(tabName)
显示某个表单Tab标签页,用法:V8.HideFormTab(‘tabName(在表单属性中设置的Tab名称)’)
V8.ClickFormTab(tabName)
选中某个表单Tab标签页
V8.GetFormTabs
获取表单所有Tab标签页。
V8.ConfirmTips
确认提示框
例:V8.ConfirmTips(‘确认审批?’, okCallback, cancelCallback, option)。 option为可选参数,可设置:{Title:‘’,OkText:‘’,CancelText:‘’,Icon:‘’}
V8.ShowTableChildHideField
将子表已隐蔽的字段强制显示出来,并且革新子表。
V8.ShowTableChildHideField(‘子表fieldName’,[‘fieldName’,‘fieldName’]);
V8.RefreshChildTable(fieldModel, V8.Row):革新子表
例:V8.RefreshChildTable(V8.Field.子表列名, V8.Row),第二个参数可传入parentFormModel。
V8.GetChildTableData(‘子表字段名称’);
V8.CurrentTableData
V8.WF.StartWork:发起流程:
- V8.WF.StartWork({
- FlowDesignId:'',//流程图Id,必传
- FormData:JSON.stringify({}),//可选,也可以传入{} object类型,内部会自动序列化
- TableRowId:'',//关联的数据Id,必传
- NoticeFields:JSON.stringify([]),//通知数据,可选,格式:[{Id:'字段Id',Name:'字段名',Label:'字段名称',Value:'值'}],如果是数组类型,内部会自动序列化
- //还可以传入选择的下一步审批人、添加的审批人、审批意见 等等
- }, function(result){//这是回调函数处理,result返回了Receivers、ToNodeName等
- });
复制代码 V8.SendSystemMessage
发送系统消息
//消息内容var msgContent = ‘测试v8发送系统消息!’ + new Date().toString();//内容增长路由跳转msgContent += ‘测试页面跳转’;//发送系统消息V8.SendSystemMessage({ Content: msgContent, ToUserId: ‘c19e70d1-b7b3-4eaa-933d-e8f59c85562f’}, function(result){ V8.Tips(JSON.stringify(result));});
V8.FormWF:访问当前是否打开了带流程界面的表单,返回值:
{
IsWF:true/false, //是否打开了带流程界面的表单
WorkType:‘’,//StartWork、ViewWork
FlowDesignId:‘流程图Id’
}
V8.Base64:base64加解密
V8.Base64.endcode(‘待加密字符串’);//加密
V8.Base64.dedcode(‘待解密字符串’);//解密
V8.Base64.isValid(‘已加密字符串’);//判断是否是已加密的base64格式
V8.OpenDialog(param):打开一个定制组件对话框
例子;
- V8.OpenDialog({
- ComponentName:'NodeColConfig',//必传,其余参数可选。组件名称,二次开发必须提前预注册。
- Title: '测试定制组件标题',
- OpenType:'',//可传:Drawer
- TitleIcon: 'fas fa-plus',//标题左侧的图标
- Width: '70%',
- DataAppend:{//传入自定义附加数据,DataAppend为固定参数名称
- Abc:123,
- Name:'张三'
- }
- });
- //在定制组件内props接收V8对象:
- props: {
- DataAppend:{
- type: Object,
- default: () => {}
- }},
- mounted() {
- //this.DataAppend.V8包含了绝大部分可使用的V8内置函数,可以使用V8事件一样的写法。
- //获取已打开的表单中(或已选中的一条表格数据)的Title字段值。
- var title = this.DataAppend.V8.Form.Title;
- //访问传过来的自定义数据
- var name = this.DataAppend.Name;//张三
- //刷新diy表格
- this.DataAppend.V8.RefreshTable();
- //关闭当前对话框
- this.DataAppend.V8.CloseThisDialog();
- }
复制代码 V8.NewGuid()
生成一个前端Guid值
await V8.NewServerGuid()
生成一个服务器端Guid值
V8._
访问underscore对象,常用的js实用库,如:V8._.where(…)。underscore用法见:https://underscorejs.org/ https://underscorejs.net/
V8.ModuleEngine:
模块引擎相关
V8.ApiEngine:
接口引擎
V8.DataSourceEngine:
数据源引擎
V8.OpenAnyForm:
打开一个恣意表单
- V8.OpenAnyForm({
- TableName: "Diy_ShouhouDD", //必传。打开哪张表。
- FormMode: "Edit", //必传。打开的模式:Add、Edit、View
- Id: V8.Form.Id, //当FormMode为Edit、View时,必传Id。
- DialogType: "Dialog", //可选。打开的方式,不传则默认为表单属性设置的打开方式。
- SelectFields: ["ZhipaiXX", "ShouhouRY"], //可选。只查询、显示哪些字段。不传则默认显示。
- Width: "765px", //可选。弹出层的宽度。不传则默认为表单属性设置的弹出宽度。
- DataAppend: {
- //传入自定义附加数据,DataAppend为固定参数名称。可在指定的打开表单V8事件中使用V8.DataAppend访问。
- Abc: 123,
- Name: "张三",
- },
- //替换掉提交事件。可选。
- EventReplace: {
- //这3个参数一定会接收到,必须执行callback(DosResult)
- Submit: async function (v8, param, callback) {
- //调用指派接口
- var result = await V8.ApiEngine.Run({
- ApiEngineKey: "shouhoudd_zhipai",
- Id: v8.Form.Id,
- ShouhouRY: V8.Form.ShouhouRY,
- ShouhouRYID: V8.Form.ShouhouRYID,
- ShouhouRYDH: V8.Form.ShouhouRYDH,
- });
- callback(result);
- },
- },
- });
复制代码 Microi吾码 - 系列文档
- 平台介绍:https://microi.blog.csdn.net/article/details/143414349
- 一键安装使用:https://microi.blog.csdn.net/article/details/143832680
- 快速开始使用:https://microi.blog.csdn.net/article/details/143607068
- 源码本地运行-后端:https://microi.blog.csdn.net/article/details/143567676
- 源码本地运行-前端:https://microi.blog.csdn.net/article/details/143581687
- Docker部署:https://microi.blog.csdn.net/article/details/143576299
- 表单引擎:https://microi.blog.csdn.net/article/details/143671179
- 模块引擎:https://microi.blog.csdn.net/article/details/143775484
- 接口引擎:https://microi.blog.csdn.net/article/details/143968454
- 工作流引擎:https://microi.blog.csdn.net/article/details/143742635
- 界面引擎:https://microi.blog.csdn.net/article/details/143972924
- 打印引擎:https://microi.blog.csdn.net/article/details/143973593
- V8函数列表-前端:https://microi.blog.csdn.net/article/details/143623205
- V8函数列表-后端:https://microi.blog.csdn.net/article/details/143623433
- V8.FormEngine用法:https://microi.blog.csdn.net/article/details/143623519
- Where条件用法:https://microi.blog.csdn.net/article/details/143582519
- DosResult阐明:https://microi.blog.csdn.net/article/details/143870540
- 分布式存储设置:https://microi.blog.csdn.net/article/details/143763937
- 自定义导出Excel:https://microi.blog.csdn.net/article/details/143619083
- 表单引擎-定制组件:https://microi.blog.csdn.net/article/details/143939702
- 表单控件数据源绑定设置:https://microi.blog.csdn.net/article/details/143767223
- 复制表单和模块到其它数据库:https://microi.blog.csdn.net/article/details/143950112
- 论传统定制开发与低代码开发的优缺点:https://microi.blog.csdn.net/article/details/143866006
- 接口引擎实战-发送第三方短信:https://microi.blog.csdn.net/article/details/143990546
- 接口引擎实战-发送阿里云短信:https://microi.blog.csdn.net/article/details/143990603
- 开源版、个人版、企业版区别:https://microi.blog.csdn.net/article/details/143974752
- 成为合伙人:https://microi.blog.csdn.net/article/details/143974715
- 基于Microi的开源项目:https://microi.blog.csdn.net/category_12828230.html
- 成功案例:https://microi.blog.csdn.net/category_12828272.html
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |