开源低代码平台-Microi吾码-V8函数列表-前端

半亩花草  金牌会员 | 2025-2-14 10:05:49 | 来自手机 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 855|帖子 855|积分 2565

平台简介

   

  • 技术框架:.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
  1. if(V8.KeyCode == 13){
  2.     V8.Tips('您已经按了Enter键!');
  3. }
复制代码
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

  1. //发起ajax请求,常规用法,自带token,默认Form Data参数格式(非Request Payload)
  2. V8.Post('api url', { Id : 1 }, function(result){
  3.     if(result.Code == 1){ ... }
  4. })
  5. //完整用法
  6. V8.Post({
  7.   url : '',//接口地址,必传。
  8.   data : {}, //接口参数
  9.   dataType : 'json', //默认空(Form Data),可选json(Request Payload)
  10.   header : {}, //可选参数
  11.   success : function(result){ }, //请求成功的回调函数,常用参数。
  12.   fail : function(result){ }, //请求失败的回调函数,如接口报错404、500,可选参数,也可传入error,与fail一致。
  13. });
复制代码
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
  父表中对子表操作:

  1. V8.TableSearchAppend(V8.Field.子表Name, {FiedlName : value, FieldName2 : value})
  2. V8.TableSearchSet(V8.Field.子表Name, {FiedlName : value, FieldName2 : value})
  3. V8.TableRefresh(V8.Field.子表Name, { _PageIndex : -1 })
  4. _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:发起流程:

  1. V8.WF.StartWork({        
  2.     FlowDesignId:'',//流程图Id,必传        
  3.     FormData:JSON.stringify({}),//可选,也可以传入{} object类型,内部会自动序列化        
  4.     TableRowId:'',//关联的数据Id,必传        
  5.     NoticeFields:JSON.stringify([]),//通知数据,可选,格式:[{Id:'字段Id',Name:'字段名',Label:'字段名称',Value:'值'}],如果是数组类型,内部会自动序列化        
  6.     //还可以传入选择的下一步审批人、添加的审批人、审批意见 等等   
  7. }, function(result){//这是回调函数处理,result返回了Receivers、ToNodeName等
  8. });
复制代码
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):打开一个定制组件对话框

   例子;
  1. V8.OpenDialog({   
  2.     ComponentName:'NodeColConfig',//必传,其余参数可选。组件名称,二次开发必须提前预注册。   
  3.     Title: '测试定制组件标题',   
  4.     OpenType:'',//可传:Drawer   
  5.     TitleIcon: 'fas fa-plus',//标题左侧的图标   
  6.     Width: '70%',   
  7.     DataAppend:{//传入自定义附加数据,DataAppend为固定参数名称        
  8.         Abc:123,        
  9.         Name:'张三'   
  10.     }
  11. });
  12. //在定制组件内props接收V8对象:
  13. props: {   
  14.     DataAppend:{        
  15.         type: Object,        
  16.         default: () => {}   
  17.     }},
  18.     mounted() {   
  19.         //this.DataAppend.V8包含了绝大部分可使用的V8内置函数,可以使用V8事件一样的写法。   
  20.         //获取已打开的表单中(或已选中的一条表格数据)的Title字段值。   
  21.         var title = this.DataAppend.V8.Form.Title;   
  22.         //访问传过来的自定义数据   
  23.         var name = this.DataAppend.Name;//张三   
  24.         //刷新diy表格   
  25.         this.DataAppend.V8.RefreshTable();   
  26.         //关闭当前对话框   
  27.         this.DataAppend.V8.CloseThisDialog();
  28.     }
复制代码
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:

   打开一个恣意表单
  1. V8.OpenAnyForm({
  2.   TableName: "Diy_ShouhouDD", //必传。打开哪张表。
  3.   FormMode: "Edit", //必传。打开的模式:Add、Edit、View
  4.   Id: V8.Form.Id, //当FormMode为Edit、View时,必传Id。
  5.   DialogType: "Dialog", //可选。打开的方式,不传则默认为表单属性设置的打开方式。
  6.   SelectFields: ["ZhipaiXX", "ShouhouRY"], //可选。只查询、显示哪些字段。不传则默认显示。
  7.   Width: "765px", //可选。弹出层的宽度。不传则默认为表单属性设置的弹出宽度。
  8.   DataAppend: {
  9.     //传入自定义附加数据,DataAppend为固定参数名称。可在指定的打开表单V8事件中使用V8.DataAppend访问。
  10.     Abc: 123,
  11.     Name: "张三",
  12.   },
  13.   //替换掉提交事件。可选。
  14.   EventReplace: {
  15.     //这3个参数一定会接收到,必须执行callback(DosResult)
  16.     Submit: async function (v8, param, callback) {
  17.       //调用指派接口
  18.       var result = await V8.ApiEngine.Run({
  19.         ApiEngineKey: "shouhoudd_zhipai",
  20.         Id: v8.Form.Id,
  21.         ShouhouRY: V8.Form.ShouhouRY,
  22.         ShouhouRYID: V8.Form.ShouhouRYID,
  23.         ShouhouRYDH: V8.Form.ShouhouRYDH,
  24.       });
  25.       callback(result);
  26.     },
  27.   },
  28. });
复制代码
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企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

半亩花草

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表