代码拉取完成,页面将自动刷新
本项目使用json渲染表单,支持自定义组件、表单联动等高级功能,使用 vue2 + CompositionAPI + ts 实现伪 vue3 应用
在引入v-form-antd
之前,请确保您已经引入ant-design-vue
以下组件:
import {
Input,
ConfigProvider,
Collapse,
Empty,
FormModel,
Row,
Tabs,
Button,
Icon,
Radio,
InputNumber,
Slider,
Tooltip,
Divider,
Modal,
Col,
Checkbox,
Select,
DatePicker,
Upload,
Switch,
Space,
Popover,
Cascader,
Rate,
TimePicker,
TreeSelect
} from 'ant-design-vue'
yarn add v-form-antd
# or
npm install v-form-antd
// main.js
import Vue from 'vue'
import VFormAntd from 'v-form-antd'
import 'v-form-antd/lib/index.css'
Vue.use(VFormAntd)
<template>
<v-form-design title="v-form-antd-表单设计器"/>
</template>
<template>
<div>
<v-form-create
:formConfig="formConfig"
:formData="formData"
v-model="fApi"
/>
<button @click="submit">提交</button>
</div>
</template>
<script>
export default {
data () {
return {
fApi:{},
formData:{},
formConfig: {
formItems: [
{
type: 'input',
label: '姓名',
field: 'name',
span: 12,
props: {
type: 'text'
}
},
{
type: 'number',
label: '年龄',
field: 'age',
span: 12,
props: {}
}
],
config: {
layout: 'horizontal',
labelLayout: 'flex',
labelWidth: 100,
labelCol: {},
wrapperCol: {}
}
}
}
},
methods: {
async submit() {
const data = await this.fApi.submit()
console.log(data)
}
}
}
</script>
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. 开源生态
2. 协作、人、软件
3. 评估模型