refactor: Supports configuring whether required fields are displayed
--story=1017498 --user=刘瑞斌 【高级编排应用】用户输入参数默认值增加显示设置优化 https://www.tapd.cn/57709429/s/1635457
This commit is contained in:
parent
8666973519
commit
25b6acb0db
@ -100,6 +100,7 @@ const getData = () => {
|
|||||||
required: form_data.value.required,
|
required: form_data.value.required,
|
||||||
field: form_data.value.field,
|
field: form_data.value.field,
|
||||||
default_value: form_data.value.default_value,
|
default_value: form_data.value.default_value,
|
||||||
|
show_default_value: form_data.value.show_default_value,
|
||||||
...componentFormRef.value.getData()
|
...componentFormRef.value.getData()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -26,11 +26,16 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="默认值"
|
|
||||||
:required="formValue.required"
|
:required="formValue.required"
|
||||||
prop="default_value"
|
prop="default_value"
|
||||||
:rules="formValue.required ? [{ required: true, message: '默认值 为必填属性' }] : []"
|
:rules="formValue.required ? [{ required: true, message: '默认值 为必填属性' }] : []"
|
||||||
>
|
>
|
||||||
|
<template #label>
|
||||||
|
<div class="flex-between">
|
||||||
|
默认值
|
||||||
|
<el-checkbox v-model="formValue.show_default_value" label="显示默认值" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
v-model="formValue.default_value"
|
v-model="formValue.default_value"
|
||||||
:type="formValue.type"
|
:type="formValue.type"
|
||||||
@ -91,19 +96,22 @@ const getData = () => {
|
|||||||
format: formValue.value.format,
|
format: formValue.value.format,
|
||||||
'value-format': formValue.value.format
|
'value-format': formValue.value.format
|
||||||
},
|
},
|
||||||
default_value: formValue.value.default_value
|
default_value: formValue.value.default_value,
|
||||||
|
show_default_value: formValue.value.show_default_value,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const rander = (form_data: any) => {
|
const rander = (form_data: any) => {
|
||||||
formValue.value.type = form_data.attrs.type
|
formValue.value.type = form_data.attrs.type
|
||||||
formValue.value.format = form_data.attrs?.format
|
formValue.value.format = form_data.attrs?.format
|
||||||
formValue.value.default_value = form_data.default_value || ''
|
formValue.value.default_value = form_data.default_value || ''
|
||||||
|
formValue.value.show_default_value = form_data.show_default_value
|
||||||
}
|
}
|
||||||
defineExpose({ getData, rander })
|
defineExpose({ getData, rander })
|
||||||
onBeforeMount(() => {
|
onBeforeMount(() => {
|
||||||
formValue.value.type = 'datetime'
|
formValue.value.type = 'datetime'
|
||||||
formValue.value.format = 'YYYY-MM-DD HH:mm:ss'
|
formValue.value.format = 'YYYY-MM-DD HH:mm:ss'
|
||||||
formValue.value.default_value = ''
|
formValue.value.default_value = ''
|
||||||
|
formValue.value.show_default_value = true
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss"></style>
|
<style lang="scss"></style>
|
||||||
|
|||||||
@ -1,10 +1,15 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="默认值"
|
|
||||||
:required="formValue.required"
|
:required="formValue.required"
|
||||||
prop="default_value"
|
prop="default_value"
|
||||||
:rules="[default_value_rule]"
|
:rules="[default_value_rule]"
|
||||||
>
|
>
|
||||||
|
<template #label>
|
||||||
|
<div class="flex-between">
|
||||||
|
默认值
|
||||||
|
<el-checkbox v-model="formValue.show_default_value" label="显示默认值" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
<JsonInput ref="jsonInputRef" v-model="formValue.default_value"> </JsonInput>
|
<JsonInput ref="jsonInputRef" v-model="formValue.default_value"> </JsonInput>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</template>
|
</template>
|
||||||
@ -40,7 +45,8 @@ const getData = () => {
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
default_value: formValue.value.default_value
|
default_value: formValue.value.default_value,
|
||||||
|
show_default_value: formValue.value.show_default_value,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -55,10 +61,12 @@ const default_value_rule = {
|
|||||||
|
|
||||||
const rander = (form_data: any) => {
|
const rander = (form_data: any) => {
|
||||||
formValue.value.default_value = form_data.default_value
|
formValue.value.default_value = form_data.default_value
|
||||||
|
formValue.value.show_default_value = form_data.show_default_value
|
||||||
}
|
}
|
||||||
defineExpose({ getData, rander })
|
defineExpose({ getData, rander })
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
formValue.value.default_value = {}
|
formValue.value.default_value = {}
|
||||||
|
formValue.value.show_default_value = true
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss"></style>
|
<style lang="scss"></style>
|
||||||
|
|||||||
@ -46,11 +46,16 @@
|
|||||||
</el-row>
|
</el-row>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="默认值"
|
|
||||||
:required="formValue.required"
|
:required="formValue.required"
|
||||||
prop="default_value"
|
prop="default_value"
|
||||||
:rules="formValue.required ? [{ required: true, message: '默认值 为必填属性' }] : []"
|
:rules="formValue.required ? [{ required: true, message: '默认值 为必填属性' }] : []"
|
||||||
>
|
>
|
||||||
|
<template #label>
|
||||||
|
<div class="flex-between">
|
||||||
|
默认值
|
||||||
|
<el-checkbox v-model="formValue.show_default_value" label="显示默认值" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
<el-select
|
<el-select
|
||||||
class="m-2"
|
class="m-2"
|
||||||
multiple
|
multiple
|
||||||
@ -103,6 +108,7 @@ const getData = () => {
|
|||||||
input_type: 'MultiSelect',
|
input_type: 'MultiSelect',
|
||||||
attrs: {},
|
attrs: {},
|
||||||
default_value: formValue.value.default_value,
|
default_value: formValue.value.default_value,
|
||||||
|
show_default_value: formValue.value.show_default_value,
|
||||||
text_field: 'label',
|
text_field: 'label',
|
||||||
value_field: 'value',
|
value_field: 'value',
|
||||||
option_list: formValue.value.option_list
|
option_list: formValue.value.option_list
|
||||||
@ -111,12 +117,14 @@ const getData = () => {
|
|||||||
const rander = (form_data: any) => {
|
const rander = (form_data: any) => {
|
||||||
formValue.value.option_list = form_data.option_list || []
|
formValue.value.option_list = form_data.option_list || []
|
||||||
formValue.value.default_value = form_data.default_value
|
formValue.value.default_value = form_data.default_value
|
||||||
|
formValue.value.show_default_value = form_data.show_default_value
|
||||||
}
|
}
|
||||||
|
|
||||||
defineExpose({ getData, rander })
|
defineExpose({ getData, rander })
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
formValue.value.option_list = []
|
formValue.value.option_list = []
|
||||||
formValue.value.default_value = ''
|
formValue.value.default_value = ''
|
||||||
|
formValue.value.show_default_value = true
|
||||||
|
|
||||||
addOption()
|
addOption()
|
||||||
})
|
})
|
||||||
|
|||||||
@ -47,11 +47,16 @@
|
|||||||
</el-row>
|
</el-row>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="默认值"
|
|
||||||
:required="formValue.required"
|
:required="formValue.required"
|
||||||
prop="default_value"
|
prop="default_value"
|
||||||
:rules="formValue.required ? [{ required: true, message: '默认值 为必填属性' }] : []"
|
:rules="formValue.required ? [{ required: true, message: '默认值 为必填属性' }] : []"
|
||||||
>
|
>
|
||||||
|
<template #label>
|
||||||
|
<div class="flex-between">
|
||||||
|
默认值
|
||||||
|
<el-checkbox v-model="formValue.show_default_value" label="显示默认值" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
<RadioCard
|
<RadioCard
|
||||||
:form-field="formField"
|
:form-field="formField"
|
||||||
v-model="formValue.default_value"
|
v-model="formValue.default_value"
|
||||||
@ -96,6 +101,7 @@ const getData = () => {
|
|||||||
input_type: 'RadioCard',
|
input_type: 'RadioCard',
|
||||||
attrs: {},
|
attrs: {},
|
||||||
default_value: formValue.value.default_value,
|
default_value: formValue.value.default_value,
|
||||||
|
show_default_value: formValue.value.show_default_value,
|
||||||
text_field: 'label',
|
text_field: 'label',
|
||||||
value_field: 'value',
|
value_field: 'value',
|
||||||
option_list: formValue.value.option_list
|
option_list: formValue.value.option_list
|
||||||
@ -104,12 +110,14 @@ const getData = () => {
|
|||||||
const rander = (form_data: any) => {
|
const rander = (form_data: any) => {
|
||||||
formValue.value.option_list = form_data.option_list || []
|
formValue.value.option_list = form_data.option_list || []
|
||||||
formValue.value.default_value = form_data.default_value
|
formValue.value.default_value = form_data.default_value
|
||||||
|
formValue.value.show_default_value = form_data.show_default_value
|
||||||
}
|
}
|
||||||
|
|
||||||
defineExpose({ getData, rander })
|
defineExpose({ getData, rander })
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
formValue.value.option_list = []
|
formValue.value.option_list = []
|
||||||
formValue.value.default_value = ''
|
formValue.value.default_value = ''
|
||||||
|
formValue.value.show_default_value = true
|
||||||
|
|
||||||
addOption()
|
addOption()
|
||||||
})
|
})
|
||||||
|
|||||||
@ -47,11 +47,16 @@
|
|||||||
</el-row>
|
</el-row>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="默认值"
|
|
||||||
:required="formValue.required"
|
:required="formValue.required"
|
||||||
prop="default_value"
|
prop="default_value"
|
||||||
:rules="formValue.required ? [{ required: true, message: '默认值 为必填属性' }] : []"
|
:rules="formValue.required ? [{ required: true, message: '默认值 为必填属性' }] : []"
|
||||||
>
|
>
|
||||||
|
<template #label>
|
||||||
|
<div class="flex-between">
|
||||||
|
默认值
|
||||||
|
<el-checkbox v-model="formValue.show_default_value" label="显示默认值" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
<el-select v-model="formValue.default_value" :teleported="false" popper-class="default-select">
|
<el-select v-model="formValue.default_value" :teleported="false" popper-class="default-select">
|
||||||
<el-option
|
<el-option
|
||||||
v-for="(option, index) in formValue.option_list"
|
v-for="(option, index) in formValue.option_list"
|
||||||
@ -95,6 +100,7 @@ const getData = () => {
|
|||||||
input_type: 'SingleSelect',
|
input_type: 'SingleSelect',
|
||||||
attrs: {},
|
attrs: {},
|
||||||
default_value: formValue.value.default_value,
|
default_value: formValue.value.default_value,
|
||||||
|
show_default_value: formValue.value.show_default_value,
|
||||||
text_field: 'label',
|
text_field: 'label',
|
||||||
value_field: 'value',
|
value_field: 'value',
|
||||||
option_list: formValue.value.option_list
|
option_list: formValue.value.option_list
|
||||||
@ -109,6 +115,7 @@ defineExpose({ getData, rander })
|
|||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
formValue.value.option_list = []
|
formValue.value.option_list = []
|
||||||
formValue.value.default_value = ''
|
formValue.value.default_value = ''
|
||||||
|
formValue.value.show_default_value = true
|
||||||
|
|
||||||
addOption()
|
addOption()
|
||||||
})
|
})
|
||||||
|
|||||||
@ -47,13 +47,18 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="默认值"
|
|
||||||
:required="formValue.required"
|
:required="formValue.required"
|
||||||
prop="default_value"
|
prop="default_value"
|
||||||
:rules="
|
:rules="
|
||||||
formValue.required ? [{ required: true, message: '默认值 为必填属性' }, ...rules] : rules
|
formValue.required ? [{ required: true, message: '默认值 为必填属性' }, ...rules] : rules
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
|
<template #label>
|
||||||
|
<div class="flex-between">
|
||||||
|
默认值
|
||||||
|
<el-checkbox v-model="formValue.show_default_value" label="显示默认值" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
<el-input
|
<el-input
|
||||||
v-model="formValue.default_value"
|
v-model="formValue.default_value"
|
||||||
:maxlength="formValue.maxlength"
|
:maxlength="formValue.maxlength"
|
||||||
@ -96,6 +101,7 @@ const getData = () => {
|
|||||||
'show-word-limit': true
|
'show-word-limit': true
|
||||||
},
|
},
|
||||||
default_value: formValue.value.default_value,
|
default_value: formValue.value.default_value,
|
||||||
|
show_default_value: formValue.value.show_default_value,
|
||||||
props_info: {
|
props_info: {
|
||||||
rules: formValue.value.required
|
rules: formValue.value.required
|
||||||
? [
|
? [
|
||||||
@ -153,6 +159,7 @@ onMounted(() => {
|
|||||||
formValue.value.minlength = 0
|
formValue.value.minlength = 0
|
||||||
formValue.value.maxlength = 20
|
formValue.value.maxlength = 20
|
||||||
formValue.value.default_value = ''
|
formValue.value.default_value = ''
|
||||||
|
formValue.value.show_default_value = true
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss"></style>
|
<style lang="scss"></style>
|
||||||
|
|||||||
@ -151,6 +151,12 @@ const initDefaultData = (formField: FormField) => {
|
|||||||
) {
|
) {
|
||||||
formValue.value[formField.field] = formField.default_value
|
formValue.value[formField.field] = formField.default_value
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 配置不展示默认值,则设置为undefined
|
||||||
|
if (formField.show_default_value === false) {
|
||||||
|
formValue.value[formField.field] = undefined
|
||||||
|
console.log(formField.show_default_value, formValue.value[formField.field])
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
onBeforeMount(() => {
|
onBeforeMount(() => {
|
||||||
|
|||||||
@ -126,6 +126,10 @@ interface FormField {
|
|||||||
* 默认值
|
* 默认值
|
||||||
*/
|
*/
|
||||||
default_value?: any
|
default_value?: any
|
||||||
|
/**
|
||||||
|
* 是否显示默认值
|
||||||
|
*/
|
||||||
|
show_default_value?: boolean
|
||||||
/**
|
/**
|
||||||
* {field:field_value_list} 表示在 field有值 ,并且值在field_value_list中才显示
|
* {field:field_value_list} 表示在 field有值 ,并且值在field_value_list中才显示
|
||||||
*/
|
*/
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user