|
@ -48,6 +48,7 @@
|
|
|
v-model="form[item.id]"
|
|
|
clearable
|
|
|
v-bind="item"
|
|
|
@change="onSelChange($event, item)"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="opt in item.optionList"
|
|
@ -68,6 +69,18 @@
|
|
|
v-model="form[item.id]"
|
|
|
:label="opt.value">{{opt.label}}</el-radio>
|
|
|
</template>
|
|
|
<template v-else-if="item.type=='checkbox'">
|
|
|
<el-checkbox-group
|
|
|
@change="onCheckboxChange($event, item)"
|
|
|
v-model="form[item.id]">
|
|
|
<el-checkbox
|
|
|
v-for="opt in item.optionList"
|
|
|
:key="opt.value"
|
|
|
:label="opt.value">
|
|
|
{{opt.label}}
|
|
|
</el-checkbox>
|
|
|
</el-checkbox-group>
|
|
|
</template>
|
|
|
<el-input-number v-else-if="item.type=='inputNumber'" v-model="form[item.id]" :controls-position="item.controlsPosition||''" :placeholder="item.placeholder" :min="item.min||''" :max="item.max"></el-input-number>
|
|
|
</template>
|
|
|
</el-form-item>
|
|
@ -129,6 +142,25 @@ export default {
|
|
|
item.optionList = res
|
|
|
})
|
|
|
},
|
|
|
onSelChange(value, item){
|
|
|
if(item.onChange){
|
|
|
var exist = _.filter(item.optionList, (v)=>{
|
|
|
return v.value == value
|
|
|
})
|
|
|
item.onChange(exist)
|
|
|
}
|
|
|
},
|
|
|
onCheckboxChange(values, item){
|
|
|
if(item.onChange){
|
|
|
var exist = []
|
|
|
values.forEach(m=>{
|
|
|
exist = exist.concat(_.filter(item.optionList, (v)=>{
|
|
|
return v.value == m
|
|
|
}))
|
|
|
})
|
|
|
item.onChange(exist)
|
|
|
}
|
|
|
},
|
|
|
}
|
|
|
}
|
|
|
</script>
|