Skip to content

Commit ca70a44

Browse files
committed
fix: refresh stages
1 parent f0d4b44 commit ca70a44

File tree

1 file changed

+6
-5
lines changed
  • packages/components-vue/src/components/form

1 file changed

+6
-5
lines changed

packages/components-vue/src/components/form/Stages.vue

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@
103103
</template>
104104

105105
<script setup lang="ts">
106-
import { ref } from "vue";
106+
import { ref, watch } from "vue";
107107
import _ from "lodash";
108108
109109
import type { iInvalidInput, tProps } from "@open-xamu-co/ui-common-types";
@@ -185,19 +185,19 @@
185185
if (Array.isArray(successOrInvalid)) invalid.value = successOrInvalid;
186186
else {
187187
emit("submited", successOrInvalid);
188-
resetStages(); // reset form
188+
resetStages(props.stages); // reset form
189189
}
190190
});
191191
192192
function getLocalFormInputsKey(stageIndex: number, formIndex: number) {
193193
return `form-${stageIndex}-${formIndex}`;
194194
}
195-
function resetStages() {
195+
function resetStages(newStages: iForm[][]) {
196196
// reset
197197
localStages.value = [];
198198
localFormInputs.value = {};
199199
200-
props.stages
200+
newStages
201201
.filter((s) => s.length)
202202
.forEach((stage, stageIndex) => {
203203
const keys: string[] = [];
@@ -232,5 +232,6 @@
232232
233233
// lifecycle
234234
emit("set-active-stage", setActiveStage);
235-
resetStages();
235+
236+
watch(() => props.stages, resetStages, { immediate: true });
236237
</script>

0 commit comments

Comments
 (0)