FormCreate中在事件中获取api
form-create中在事件中获取api
FormCreate 是一个可以通过 JSON 生成具有动态渲染、数据收集、验证和提交功能的表单生成组件。支持5个UI框架,并且支持生成任何 Vue 组件。内置20种常用表单组件和自定义组件,再复杂的表单都可以轻松搞定
FormCreate官网:https://www.form-create.com
帮助文档:https://pro.form-create.com/doc
体验地址:https://pro.form-create.com/view

数据结构
inject 参数的数据结构
type InjectArg = {
api: APi,//api
rule: Rule[],//生成规则
self: Rule,//当前生成规则
option: Object,//全局配置
inject: Any,//自定义注入的参数
args: any[],//原始回调参数
}
向事件中注入fApi和自定义数据的示例
<template>
<form-create :rule="rule" v-model:api="fApi" :option="options" @prefix1-change="change"/>
</template> <script>
export default {
data() {
return {
fApi: {},
options: {
onSubmit: (formData) => {
alert(JSON.stringify(formData))
},
wrap: {
labelCol: {
span: 4
}
}
},
rule: [
{
type: 'input',
field: 'inputField2',
title: 'change 事件',
emit: [{
name: 'change',
inject: ['自定义参数,数据类型不限']
}],
emitPrefix: 'prefix1', },
{
type: 'input',
field: 'inputField',
title: 'blur 事件',
inject: true,
on: {
blur: this.blur
}
},
]
} },
methods: {
change(inject) {
alert(`change: "${inject.self.value}", inject:"${inject.inject}"`)
},
blur(inject) {
alert(`blur: "${inject.self.title}"`)
}
}
}
</script>
全局开启
事件注入也可以通过表单配置项injectEvent:true开启,对所以事件和原生事件开启事件注入
<template>
<form-create :rule="rule" v-model:api="fApi" :option="options" @prefix1-change="change"/>
</template> <script>
export default {
data() {
return {
fApi: {},
options: {
onSubmit: (formData) => {
alert(JSON.stringify(formData))
},
wrap: {
labelCol: {
span: 4
}
},
//全局开启
injectEvent: true
},
rule: [
{
type: 'input',
field: 'inputField2',
title: 'change 事件',
emit: ['change'],
emitPrefix: 'prefix1', },
{
type: 'input',
field: 'inputField',
title: 'blur 事件',
on: {
blur: this.blur
}
},
]
} },
methods: {
change(inject) {
alert(`change: "${inject.self.value}", inject:"${inject.inject}"`)
},
blur(inject) {
alert(`blur: "${inject.self.title}"`)
}
}
}
</script>
事件注入功能可以向事件中注入fApi,rule等参数
开启事件注入后会给回调事件参数首位增加注入参数
FormCreate中在事件中获取api的更多相关文章
- flex中Button事件中的e.target
关于flex中的Button事件中的e.target. 今天想在事件中调用模块中的对象通过e.target获取单击的这个Button对象,但是可能是使用var btn:Button = e.targe ...
- CKEDITOR 3.4.2中 按钮事件中 动态改变图标和title 获取按钮
this.uiItems[0].className="cke_button_hui_position_type";this.uiItems[0].title="zhang ...
- Extjs中自定义事件
//Ext中所谓的响应事件,响应的主要是组件中已经定义的事件(通过看api各组件的events可以找到) //主要作用就是利用on调用各组件的事件处理函数,然后在函数中作用户想要的操作 ...
- GridView控件RowDataBound事件中获取列字段值的几种途径
前台: <asp:TemplateField HeaderText="充值总额|账号余额"> <ItemTemplate> <asp:Label ID ...
- ng-change事件中如何获取$event和如何在子元素事件中阻止调用父级元素事件(阻止事件冒泡)
闲聊: 今天小颖要实现一个当改变了select内容后弹出一个弹框,并且点击select父元素使得弹框消失,这就得用到阻止事件的冒泡了:$event.stopPropagation(),然而小颖发现,在 ...
- C# 有关控件、自定义类事件中的委托链的获取、移除操作
直接来代码吧,这样干脆直接,也不耽误我午休了.一切尽在源码中. public class ControlEventTool { /// <summary> /// 移除控件的某类事件, 如 ...
- 在CTreeCtrl控件点击事件中获取点击的项
网上搜了一下,有两种方法: 1.使用GetSelectedItem() HTREEITEM hItem = m_treeCtrl.GetSelectedItem(); CString strText ...
- 下拉框改变事件:获取下拉框中当前选择的文本 SelectionChanged事件
/// <summary> /// 下拉框改变事件:获取下拉框中当前选择的文本 /// </summary> /// <param name="sender&q ...
- 在OnRowDataBound或OnItemDataBound事件中获取字段值
不管是在GridView,DataList还是Repeater控件中,其中Repeater控件,没有DataKeyNames或是DataKeyField属性,想获取记录的主键值,只好用Label或是H ...
- 在Application_Error事件中获取当前的Action和Control
ASP.NET MVC程序处理异常时,方法有很多,网上也有列举了6种,下面是使用全局处理在Global.asax文件的Application_Error事件中实现.既然是ASP.NET MVC,我需要 ...
随机推荐
- zz 为什么我更喜欢 Python 的 Storm ORM
为什么我更喜欢 Python 的 Storm ORM - @emacsway 的博客 很有意思的讨论.可能还是 mapping 比较实用. 另外,文中称赞有加的 Identity Map 并不适合并发 ...
- File and Code template
/** * @author muzhi.zhong * @author <a href="mailto:muzhi.z@xxx.cn">muzhi.z</a> ...
- GenericObjectPool 避免泄漏
GenericObjectPool GenericObjectPool 是 Apache Commons Pool 提供的对象池,使用的时候需要调用 borrowObject 获取一个对象,使用完以后 ...
- 还在手工写接口测试文档,已经out了
接口文档,顾名思义就是对接口说明的文档.好的接口文档包含了对接口URL,参数以及输出内容的说明,我们参照接口文档就能编写出一个个的测试用例.而且接口文档详细的话,测试用例编写起来就会比较简单,不容易遗 ...
- Qt编写安防视频监控系统39-onvif图片参数
一.前言 通过onvif来调整图片的Brightness(亮度).ColorSaturation(色彩饱和度).Contrast(饱和度)这三个参数,可以实时观测到监控画面对应的变化,比如讲亮度Bri ...
- Qt编写安防视频监控系统38-onvif校时
一.前言 在视频监控系统中,对摄像机进行时间设置也是很有必要的,这样就和服务器或者软件这边统一了时间,一般在摄像机的画面上可以设置OSD标识当前时间,这样存储到视频文件中回放的时候,也能和本地的时间一 ...
- 推荐一个windows系统的下载和安装的网址:win7之家
win7之家:http://www.windows7en.com/ 精校 完整 极致 Windows系统下载仓储站HelloWindows :https://hellowindows.cn/
- Intellij IDEA开发环境中Springboot项目无Run ****main()的菜单
问题描述: Intellij IDEA开发环境中Springboot项目无Run ****main()的菜单. 解决办法有以下几种: 方法1:Idea无右键run选项, 无法通过main方法启动sp ...
- WPF BitmapSource /BitmapImage 获取像素点颜色
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- 分布式事务之2PC两阶段提交
1. 分布式事务概述 1.1 问题背景 在分布式系统中,业务操作可能跨越多个服务或数据库(如订单服务.库存服务.支付服务),传统单机事务(ACID)无法满足跨网络节点的数据一致性需求. 网络不可靠:服 ...