为v-form-render的form-json属性增加默认值。
parent
7cd25b0a68
commit
66c0a696ad
|
@ -6,28 +6,12 @@
|
|||
* remark: 如果要分发VForm源码,需在本文件顶部保留此文件头信息!!
|
||||
*/
|
||||
|
||||
import {deepClone, generateId, overwriteObj} from "@/utils/util"
|
||||
import {deepClone, generateId, getDefaultFormConfig, overwriteObj} from "@/utils/util"
|
||||
import {containers, advancedFields, basicFields, customFields} from "@/components/form-designer/widget-panel/widgetsConfig.js"
|
||||
import {VARIANT_FORM_VERSION} from "@/utils/config"
|
||||
|
||||
export function createDesigner(vueInstance) {
|
||||
let defaultFormConfig = {
|
||||
modelName: 'formData',
|
||||
refName: 'vForm',
|
||||
rulesName: 'rules',
|
||||
labelWidth: 80,
|
||||
labelPosition: 'left',
|
||||
size: '',
|
||||
labelAlign: 'label-left-align',
|
||||
cssCode: '',
|
||||
customClass: '',
|
||||
functions: '',
|
||||
layoutType: 'PC',
|
||||
|
||||
onFormCreated: '',
|
||||
onFormMounted: '',
|
||||
onFormDataChange: '',
|
||||
}
|
||||
let defaultFormConfig = deepClone( getDefaultFormConfig() )
|
||||
|
||||
return {
|
||||
widgetList: [],
|
||||
|
|
|
@ -29,9 +29,10 @@
|
|||
data() {
|
||||
return {
|
||||
uploadPictureTypes: [
|
||||
{value: 'jpeg', label: 'JPG'},
|
||||
{value: 'png', label: 'PNG'},
|
||||
{value: 'gif', label: 'GIF'},
|
||||
{value: 'jpg', label: 'jpg'},
|
||||
{value: 'jpeg', label: 'jpeg'},
|
||||
{value: 'png', label: 'png'},
|
||||
{value: 'gif', label: 'gif'},
|
||||
],
|
||||
}
|
||||
}
|
||||
|
|
|
@ -764,7 +764,7 @@ export const advancedFields = [
|
|||
showFileList: true,
|
||||
limit: 3,
|
||||
fileMaxSize: 5, //MB
|
||||
fileTypes: ['jpeg', 'png'],
|
||||
fileTypes: ['jpg', 'jpeg', 'png'],
|
||||
//headers: [],
|
||||
//-------------------
|
||||
customClass: '', //自定义css类名
|
||||
|
|
|
@ -45,7 +45,7 @@
|
|||
generateId, deepClone, getAllContainerWidgets, getAllFieldWidgets,
|
||||
insertCustomCssToHead,
|
||||
insertGlobalFunctionsToHtml,
|
||||
traverseFieldWidgets
|
||||
traverseFieldWidgets, buildDefaultFormJson
|
||||
} from "@/utils/util"
|
||||
import i18n, { changeLocale } from "../../utils/i18n"
|
||||
|
||||
|
@ -59,9 +59,12 @@
|
|||
...FieldComponents,
|
||||
},
|
||||
props: {
|
||||
formJson: Object, //prop传入的表单JSON配置
|
||||
formJson: { //prop传入的表单JSON配置
|
||||
type: Object,
|
||||
default: () => buildDefaultFormJson()
|
||||
},
|
||||
formData: { //prop传入的表单数据
|
||||
Object,
|
||||
type: Object,
|
||||
default: () => {}
|
||||
},
|
||||
optionData: { //prop传入的选项数据
|
||||
|
|
|
@ -321,3 +321,30 @@ export function getQueryParam(variable) {
|
|||
|
||||
return undefined;
|
||||
}
|
||||
|
||||
export function getDefaultFormConfig() {
|
||||
return {
|
||||
modelName: 'formData',
|
||||
refName: 'vForm',
|
||||
rulesName: 'rules',
|
||||
labelWidth: 80,
|
||||
labelPosition: 'left',
|
||||
size: '',
|
||||
labelAlign: 'label-left-align',
|
||||
cssCode: '',
|
||||
customClass: '',
|
||||
functions: '',
|
||||
layoutType: 'PC',
|
||||
|
||||
onFormCreated: '',
|
||||
onFormMounted: '',
|
||||
onFormDataChange: '',
|
||||
}
|
||||
}
|
||||
|
||||
export function buildDefaultFormJson() {
|
||||
return {
|
||||
widgetList: [],
|
||||
formConfig: deepClone( getDefaultFormConfig() )
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue