开源低代码平台-Microi吾码-V8函数列表-前端
技术框架:.NET8 + Redis + MySql/SqlServer/Oracle + Vue2/3 + Element-UI/Element-Plus平台始于2014年(基于Avalon.js),2018年使用Vue重构,于2024年10月29日开源。
-V8函数列表-前端
- 平台简介
- 前端V8函数列表
-
- V8.Form
- V8.OldForm
- V8.FormSet
- V8.Field
- V8.FieldSet
- V8.FormOutAction
- V8.FormOutAfterAction
- V8.FormSubmitAction
- V8.FormMode
- V8.LoadMode
- V8.TableRowId
- V8.KeyCode
- V8.TableId、V8.TableName
- V8.EventName
- V8.CurrentToken
- V8.TableModel
- V8.ThisValue
- V8.Tips
- V8.CurrentUser
- V8.Post
- V8.Get
- V8.ChineseToPinyin(chinese, fullPyLen, type)
- V8.RefreshTable({ _PageIndex : -1 })
- V8.Router.Push(url):页面跳转
- V8.Window.Open(url):打开新页面
- V8.OpenForm(formModel, type)
- V8.OpenFormWF(formModel, type)
- V8.TableRowSelected
- V8.SearchSet/SearchAppend({FieldName : value, FieldName2 : value})
- V8.IsNull(value):判断某个值是否为空
- 父表中对子表操作:
- V8.FormSubmit
- 子表中对父级操作:
- V8.AddSysLog
- V8.ReloadForm:重新加载当前表单
- V8.HideFormBtn
- V8.HideFormTab(tabName)
- V8.ShowFormTab(tabName)
- V8.ClickFormTab(tabName)
- V8.GetFormTabs
- V8.ConfirmTips
- V8.ShowTableChildHideField
- V8.GetChildTableData(‘子表字段名称’);
- V8.CurrentTableData
- V8.WF.StartWork:发起流程:
- V8.SendSystemMessage
- V8.Base64:base64加解密
- V8.OpenDialog(param):打开一个定制组件对话框
- V8.NewGuid()
- await V8.NewServerGuid()
- V8._
- V8.ModuleEngine:
- V8.ApiEngine:
- V8.DataSourceEngine:
- V8.OpenAnyForm:
- - 系列文档
平台简介
- 技术框架:.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/SearchAppend({FieldName : value, FieldName2 : value})
表格Tabs设置搜索条件
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);
},
},
});
- 系列文档
- 平台介绍: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
更多推荐
所有评论(0)