vuejs2 - 使用 vuetify 进行多个快速拨号

标签 vuejs2 vue-component vuetify.js

我想在表中有多个快速拨号,每一行一个。 但是当我打开其中一个时,激活器会打开所有。 在数据对象中有属性“fab”,它最初设置为 false。

<v-data-table
        :headers="testHeaders"
        indeterminate: false
        :items="testDesserts"
        :search="searchWord"
        :loading="loading"
        class="elevation-1 mt-1"
        hide-actions
        expand
        item-key="id_doc"
        no-data-text="Нема доступних података..."
      >
        <template slot="items" slot-scope="props">
          <tr @click="props.expanded = !props.expanded;"
            style="cursor: pointer;">
          <td>{{ props.item.receiver_full_name }}</td>
          <td>{{ props.item.id_doc }}</td>
          <td>{{ props.item.note }}</td>
          <td>

            <v-speed-dial
              v-model="fab"
              transition="scale-transition"
              fixed
              direction="left"
              open-on-hover
                    >
                  <v-btn slot="activator" fab flat small color="info">
                      <v-icon>account_circle</v-icon>
                      <v-icon>close</v-icon>
                  </v-btn>
                  <v-btn fab small flat color="info">
                      <v-icon>search</v-icon>
                  </v-btn>
                  <v-btn fab small flat color="primary">
                      <v-icon>edit</v-icon>
                  </v-btn>
                  <v-btn fab small flat color="error">
                      <v-icon>delete</v-icon>
                  </v-btn>
              </v-speed-dial>

          </td>
          <!--  -->
        </tr>
        </template>

请帮忙...

最佳答案

我通过将 v-speed-dial 和 v-btn 中的 v-model 更改为 :id="xxx"解决了这个问题

在我的例子中,“idx”是 v-for 的索引,但它可能是任何唯一标识符。

像这样:

          <v-speed-dial
            :id="idx"
            bottom
            right
            absolute
            direction="left"
            transition="slide-x-transition"
          >
            <template v-slot:activator>
              <v-btn :id="idx" color="blue-grey" dark fab>
                <v-icon>settings</v-icon>
                <v-icon>close</v-icon>
              </v-btn>
            </template>
            <v-btn ...

            </v-btn>
          </v-speed-dial>

关于vuejs2 - 使用 vuetify 进行多个快速拨号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55006273/

相关文章:

html - Vue 改变宽度和内容

javascript - Vue.js 条件模块样式

javascript - 当父组件更新 vuejs 时,子组件不会更新

vue.js - 当我更改页面时 Nuxt $vuetify.theme.dark 重置

ios - 使用 Vuejs 在 iOS 上安装 PWA 提示

jquery - 一起使用 intl-tel-input 和 vuejs2

vuejs2 - Vue中子组件向父组件传递数据

javascript - 如何从其他组件的事件监听器($on)调用此组件方法?

vue.js - 在 Vuetify 数据表上显示 bool 值

javascript - vuejs/js 对象发生变化但没有反射(reflect)在 DOM 中