我正在寻找正确的方式来显示来自子模板中的父模板的对象.但是,在下面的情况下,对象都具有相同的名称,并且父模板中的对象被阴影.有没有一种简单的方法来重命名一个值,或者我需要做一些更复杂的事情才能在子模板中同时显示这两个值?

<v-data-table :items="someParentItems" ...>
 <template v-slot:expanded-row="{ columns, item }">
   PARENT {{ item }}
   <v-data-table :items="someChildItems" ...>
     <template #item.someField="{ item }">
       CHILD {{ item }} <!-- Would really like CHILD {{ parentItem }} {{ childItem }} -->
     </template>
   </v-data-table>
 </template>
</v-data-table>

推荐答案

这只是简单的对象解构,你可以在冒号后面设置新的名称:

<v-data-table :items="someParentItems" ...>
 <template v-slot:expanded-row="{ columns, item: parentItem }">
   PARENT {{ parentItem }}
   <v-data-table :items="someChildItems" ...>
     <template #item.someField="{ item: childItem }">
        CHILD {{ parentItem }} {{ childItem }}
     </template>
   </v-data-table>
 </template>
</v-data-table>

Vue.js相关问答推荐

如何将 cogo toast PRIVE集成到nuxt3中?

为什么我的数组在 onBeforeMount 函数中不为空,但在 onMounted 函数中为空

Vue 3 需要 main.js 中的文件

v-model 修饰符返回空

为什么 Vue 在将设置脚本中的计算(computed)属性渲染到模板时找不到变量

Vue:根元素内容和内容分发槽

理解 VueJS 中的组件 props

作用域slots和 IE11 的问题

Vue watch 意外调用了两次

如何将对象作为props传递并让组件更新子对象

Vue:需要禁用页面上的所有输入

在 vue.js 中获取当前时间和日期

为什么不先移动鼠标就无法滚动视差?

vuejs 中的单元测试

自定义props类型

如何有条件地更改 vue/vuetify 文本字段 colored颜色

Vue 和 TypeScript 所需的props

如何从 bootstrap-vue 模态监听事件?

请求正在进行时显示加载器

如何从 v-for 创建的对象中绑定多个类?