|
@@ -52,44 +52,16 @@
|
|
|
</el-select>
|
|
|
</template>
|
|
|
<template v-else-if="item.type === `year` || item.type == 'month' || item.type == 'date' || item.type == 'daterange' || item.type == 'datetime' || item.type == 'datetimerange'">
|
|
|
- <el-date-picker
|
|
|
- v-model="form[item.model]"
|
|
|
- :type="item.type"
|
|
|
- :placeholder="getField('selectplaceholder', item)"
|
|
|
- :format="getDateFormat(item.type)"
|
|
|
- :value-format="getDateFormat(item.type)"
|
|
|
- v-bind="item.options"
|
|
|
- @change="dataChange(item.model)"
|
|
|
- range-separator="至"
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- </el-date-picker>
|
|
|
+ <el-date-picker v-model="form[item.model]" :type="item.type" :placeholder="getField('selectplaceholder', item)" :format="getDateFormat(item.type)" :value-format="getDateFormat(item.type)" v-bind="item.options" @change="dataChange(item.model)" range-separator="至" style="width: 100%"> </el-date-picker>
|
|
|
</template>
|
|
|
<template v-else-if="item.type === `time`">
|
|
|
- <el-time-picker
|
|
|
- v-model="form[item.model]"
|
|
|
- :placeholder="getField('selectplaceholder', item)"
|
|
|
- :format="getDateFormat(item.type)"
|
|
|
- :value-format="getDateFormat(item.type)"
|
|
|
- v-bind="item.options"
|
|
|
- @change="dataChange(item.model)"
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- </el-time-picker>
|
|
|
+ <el-time-picker v-model="form[item.model]" :placeholder="getField('selectplaceholder', item)" :format="getDateFormat(item.type)" :value-format="getDateFormat(item.type)" v-bind="item.options" @change="dataChange(item.model)" style="width: 100%"> </el-time-picker>
|
|
|
</template>
|
|
|
<template v-else-if="item.type === `inputnumber`">
|
|
|
<el-input-number v-model="form[item.model]" :placeholder="getField('placeholder', item)" v-bind="item.options" @change="dataChange(item.model)" style="width: 100%"></el-input-number>
|
|
|
</template>
|
|
|
<template v-else>
|
|
|
- <el-input
|
|
|
- clearable
|
|
|
- v-model="form[item.model]"
|
|
|
- :type="getField('type', item)"
|
|
|
- :placeholder="getField('placeholder', item)"
|
|
|
- :show-password="getField('type', item) === 'password'"
|
|
|
- v-bind="item.options"
|
|
|
- @change="dataChange(item.model)"
|
|
|
- ></el-input>
|
|
|
+ <el-input clearable v-model="form[item.model]" :type="getField('type', item)" :placeholder="getField('placeholder', item)" :show-password="getField('type', item) === 'password'" v-bind="item.options" @change="dataChange(item.model)"></el-input>
|
|
|
</template>
|
|
|
</template>
|
|
|
</el-form-item>
|
|
@@ -102,7 +74,7 @@
|
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
|
-import { get } from 'lodash-es'
|
|
|
+import { get, omitBy, isNil } from 'lodash-es'
|
|
|
const props = defineProps({
|
|
|
modelValue: { type: Object },
|
|
|
fields: { type: Array, default: () => [] }
|
|
@@ -114,11 +86,11 @@ const form = computed({
|
|
|
return props.modelValue
|
|
|
},
|
|
|
set(value) {
|
|
|
- console.log(value)
|
|
|
emits('update:modelValue', value)
|
|
|
}
|
|
|
})
|
|
|
const toClick = () => {
|
|
|
+ form.value = omitBy(form.value, isNil)
|
|
|
emits('search')
|
|
|
}
|
|
|
const toReset = () => {
|