我有一个使用动态组件管理的多步骤布局
<keep-alive>
<component :is="actualStep" :status.sync="status"></component>
</keep-alive>
<button @click.prevent="prevStep">Prev</button>
<button @click.prevent="nextStep" :disabled="!status">Next</button>
status
值用于监视实际组件状态,根据组件的内部验证过程将其值更新为true或false,并允许(或不允许)移至下一步。例如,只有填写了所有必填字段时,组件才会将状态更改为true。
status
也会更改为初始值。有些组件将其更改为true(因为它们不进行任何验证),有些组件将其更改为验证过程结果。
mounted() {
this.$emit('update:status', this.isValid); // isValid is a computed
}
然而,只有在安装组件时才会发生这种情况(我猜是因为保持活着)。每当动态组件更改为actualStep
时,我都需要这样做。如何才能做到这一点?或者它是管理动态组件的更好方法。状态?