|
@@ -102,68 +102,77 @@ export default {
|
|
|
:label="item.title"
|
|
|
:required="getFormItemRequired(item, innerValue)"
|
|
|
>
|
|
|
- <template #default="form">
|
|
|
- <slot :name="item.key" :row="innerValue" :item="item" :attr="attr">
|
|
|
- <component
|
|
|
- v-if="attr.is === 'el-select'"
|
|
|
- v-bind="attr"
|
|
|
- v-model="innerValue[item.key]"
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- <template>
|
|
|
- <el-option
|
|
|
- v-for="item in dict.type[attr.dictName]"
|
|
|
- :key="item.value"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value"
|
|
|
- >
|
|
|
- </el-option>
|
|
|
- </template>
|
|
|
- </component>
|
|
|
- <component
|
|
|
- v-else-if="attr.is === 'el-popover-select-v2'"
|
|
|
- v-bind="attr"
|
|
|
- :title="item.title"
|
|
|
- v-model="innerValue[item.key]"
|
|
|
- :source.sync="innerValue"
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- </component>
|
|
|
- <component
|
|
|
- v-else-if="attr.is === 'el-popover-multiple-select-v2'"
|
|
|
- v-bind="attr"
|
|
|
- :title="item.title"
|
|
|
- v-model="innerValue[item.key]"
|
|
|
- :source.sync="innerValue"
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- </component>
|
|
|
- <component
|
|
|
- v-else-if="attr.is === 'el-popover-tree-select'"
|
|
|
- v-bind="attr"
|
|
|
- v-model="innerValue[item.key]"
|
|
|
- :source.sync="innerValue"
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- </component>
|
|
|
- <component
|
|
|
- v-else-if="attr.is === 'el-popover-multiple-tree-select'"
|
|
|
- v-bind="attr"
|
|
|
- v-model="innerValue[item.key]"
|
|
|
- :source.sync="innerValue"
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- </component>
|
|
|
- <component
|
|
|
- v-else
|
|
|
- v-bind="attr"
|
|
|
- v-model="innerValue[item.key]"
|
|
|
- :disabled="getFormItemDisabled(attr, innerValue)"
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- </component>
|
|
|
- </slot>
|
|
|
- </template>
|
|
|
+ <template #default="form">
|
|
|
+ <slot :name="item.key" :row="innerValue" :item="item" :attr="attr">
|
|
|
+ <component
|
|
|
+ v-if="attr.is === 'el-select'"
|
|
|
+ v-bind="attr"
|
|
|
+ v-model="innerValue[item.key]"
|
|
|
+ style="width: 100%"
|
|
|
+ >
|
|
|
+ <template>
|
|
|
+ <el-option
|
|
|
+ v-for="item in dict.type[attr.dictName]"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value"
|
|
|
+ >
|
|
|
+ </el-option>
|
|
|
+ </template>
|
|
|
+ </component>
|
|
|
+ <component
|
|
|
+ v-else-if="attr.is === 'el-popover-select-v2'"
|
|
|
+ v-bind="attr"
|
|
|
+ :title="item.title"
|
|
|
+ v-model="innerValue[item.key]"
|
|
|
+ :source.sync="innerValue"
|
|
|
+ style="width: 100%"
|
|
|
+ >
|
|
|
+ </component>
|
|
|
+ <component
|
|
|
+ v-else-if="attr.is === 'el-popover-multiple-select-v2'"
|
|
|
+ v-bind="attr"
|
|
|
+ :title="item.title"
|
|
|
+ v-model="innerValue[item.key]"
|
|
|
+ :source.sync="innerValue"
|
|
|
+ style="width: 100%"
|
|
|
+ >
|
|
|
+ </component>
|
|
|
+ <component
|
|
|
+ v-else-if="attr.is === 'el-popover-tree-select'"
|
|
|
+ v-bind="attr"
|
|
|
+ v-model="innerValue[item.key]"
|
|
|
+ :source.sync="innerValue"
|
|
|
+ style="width: 100%"
|
|
|
+ >
|
|
|
+ </component>
|
|
|
+ <component
|
|
|
+ v-else-if="attr.is === 'el-popover-multiple-tree-select'"
|
|
|
+ v-bind="attr"
|
|
|
+ v-model="innerValue[item.key]"
|
|
|
+ :source.sync="innerValue"
|
|
|
+ style="width: 100%"
|
|
|
+ >
|
|
|
+ </component>
|
|
|
+ <component
|
|
|
+ v-else-if="attr.is === 'el-date-wrapper'"
|
|
|
+ v-bind="attr"
|
|
|
+ v-model="innerValue[item.key]"
|
|
|
+ :source.sync="innerValue"
|
|
|
+ @change="$emit('submit')"
|
|
|
+ style="width: 100%"
|
|
|
+ >
|
|
|
+ </component>
|
|
|
+ <component
|
|
|
+ v-else
|
|
|
+ v-bind="attr"
|
|
|
+ v-model="innerValue[item.key]"
|
|
|
+ :disabled="getFormItemDisabled(attr, innerValue)"
|
|
|
+ style="width: 100%"
|
|
|
+ >
|
|
|
+ </component>
|
|
|
+ </slot>
|
|
|
+ </template>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|