Vue.js 将@contextmenu事件与vuetify v-data-table一起使用

Vue.js 将@contextmenu事件与vuetify v-data-table一起使用,vue.js,vuetify.js,Vue.js,Vuetify.js,我试图构建一个自定义上下文菜单,当右键单击v-data-table组件中的一行时,它会弹出 我怎样才能做到这一点呢?有两种方法可以做到这一点 使用常规v数据表行 只需添加contextmenu:row事件收听v-data-table组件,右键单击即可享受每一行发出此事件的魔力。捕获此事件并在JS上处理它 <v-data-table :items="myItems" :headers="headers"

我试图构建一个自定义上下文菜单,当右键单击v-data-table组件中的一行时,它会弹出


我怎样才能做到这一点呢?

有两种方法可以做到这一点

使用常规v数据表行 只需添加
contextmenu:row
事件收听
v-data-table
组件,右键单击即可享受每一行发出此事件的魔力。捕获此事件并在JS上处理它

<v-data-table :items="myItems"
              :headers="headers"
              @contextmenu:row="rightClickHandler"
              ...
/>
注意:当表行通过诸如item或body之类的槽定义时,将不会发出

使用带有
项的表格
/
正文
插槽 当使用插槽构建自己的表行时,您需要自己手动触发每行上的事件

<v-data-table
  :headers="headers"
  :items="myItems"
  ...
  <template v-slot:body="{ items }">
    <tbody>
      <tr v-for="(item, index) in items"
          :key="item.id"
          @contextmenu="rightClick($event, item)"
          ...

有两种方法可以实现这一点

使用常规v数据表行 只需添加
contextmenu:row
事件收听
v-data-table
组件,右键单击即可享受每一行发出此事件的魔力。捕获此事件并在JS上处理它

<v-data-table :items="myItems"
              :headers="headers"
              @contextmenu:row="rightClickHandler"
              ...
/>
注意:当表行通过诸如item或body之类的槽定义时,将不会发出

使用带有
项的表格
/
正文
插槽 当使用插槽构建自己的表行时,您需要自己手动触发每行上的事件

<v-data-table
  :headers="headers"
  :items="myItems"
  ...
  <template v-slot:body="{ items }">
    <tbody>
      <tr v-for="(item, index) in items"
          :key="item.id"
          @contextmenu="rightClick($event, item)"
          ...

请分享一些代码和您迄今为止所尝试的内容。这不是一个bug或错误,只是一个vuetify的东西,我不知道如何实现。。我试图在v-data-table的每一行上触发一个contextmenu事件,但不知道如何。。文档中不包含这样的内容,我不想在整行上使用v-slot,因为我已经有一些自定义字段,我不想自定义整行条目..您想对该事件做什么?只想显示自定义上下文菜单,一组要应用于表中某些选定行的操作,我想自己从vue组件模型中获取数据,但您应该使用自定义行渲染和插槽,并在每行触发该事件。请共享一些代码和您迄今为止所尝试的内容。这不是错误或错误,只是vuetify,我不知道如何实现。。我试图在v-data-table的每一行上触发一个contextmenu事件,但不知道如何。。文档中不包含这样的内容,我不想在整行上使用v-slot,因为我已经有一些自定义字段,我不想自定义整行条目..您想对该事件做什么?只想显示自定义上下文菜单,一组要应用于表中某些选定行的操作,我想从vue组件模型本身获取数据,但您应该使用带有插槽的自定义行渲染,并在每行激发该事件