首页 > 解决方案 > 将 Vuetify v-stepper 与 Vue 路由器动态集成

问题描述

我想将 vuetify 的v-stepper与 vue 路由器集成。我的要求如下:

这更像是一个“什么是最好的方法”之类的问题。我尝试了多种解决方案,但没有一个符合我的要求。

<v-stepper v-model="position" vertical>
  <template v-for="(item, index) in steps">

          <v-stepper-step :complete="position > index + 1" :step="index + 1">
            <h2>
              {{item.title}}
            </h2>
          </v-stepper-step>

          <v-stepper-content :step="index+1">
            <router-view></router-view>
          </v-stepper-content>

  </template>
</v-stepper>

以我的经验,最大的缺陷是(与例如 v-tab 相反),每一步都必须有自己的v-stepper-content. 如果我要使用选项卡执行此操作,我只需创建一个tab-item并更新视图。我不能这样做v-stepper,因为它不会继续到下一个“步骤”。

有人会有创造性的方法吗?

标签: javascriptvue.jsvue-routervuetify.jsv-stepper

解决方案


我能够通过执行以下操作来实现这一点:

<v-stepper-step @click="goToRoute('step1')">

goToRoute(name) {
   this.$router.push({'name': name})
}

你应该能够做到这一点:

<v-stepper-step @click="$router.push({'name': name})">

推荐阅读