|
|
@@ -6,26 +6,13 @@ interface Props {
|
|
|
formItem: BasicFormItem
|
|
|
formConfig: BasicForm
|
|
|
formData: any
|
|
|
- showSubmitBtn: boolean
|
|
|
}
|
|
|
-const props = withDefaults(defineProps<Props>(), {
|
|
|
- active: 0,
|
|
|
- showSubmitBtn: true
|
|
|
-})
|
|
|
-const emits = defineEmits(['submit', 'next'])
|
|
|
+const props = defineProps<Props>()
|
|
|
|
|
|
const stepsProps = props.formItem.props as {
|
|
|
active: number
|
|
|
steps: Array<StepProps>
|
|
|
}
|
|
|
-
|
|
|
-const handleNext = () => {
|
|
|
- stepsProps.active < stepsProps.steps?.length - 1 && stepsProps.active++
|
|
|
- emits('next', props.formData)
|
|
|
-}
|
|
|
-const handleSubmit = () => {
|
|
|
- emits('submit', props.formData)
|
|
|
-}
|
|
|
</script>
|
|
|
|
|
|
<template>
|
|
|
@@ -40,18 +27,6 @@ const handleSubmit = () => {
|
|
|
v-if="stepsProps.active === index"
|
|
|
></component>
|
|
|
</template>
|
|
|
- <div class="text-center">
|
|
|
- <el-button
|
|
|
- type="primary"
|
|
|
- @click="handleSubmit"
|
|
|
- v-if="showSubmitBtn && stepsProps.active === stepsProps.steps?.length - 1"
|
|
|
- >
|
|
|
- 提交
|
|
|
- </el-button>
|
|
|
- <el-button type="primary" @click="handleNext" v-if="stepsProps.active < stepsProps.steps?.length - 1">
|
|
|
- 下一步
|
|
|
- </el-button>
|
|
|
- </div>
|
|
|
</template>
|
|
|
|
|
|
<style lang="scss" scoped></style>
|