我需要通过单击一个文档的图标从firebase中删除该文档。问题是我不知道如何在vuetify中标记每个文档的特定id
这是我的名片(一个项目一张名片)
<v-card flat v-for="project in projects" :key="project.title">
<v-layout row wrap :class="`pa-3 project ${project.status}`">
<v-flex xs12 md6>
<div class="caption grey--text">Project title</div>
<div>{{ project.title }}</div>
</v-flex>
<v-flex xs6 sm4 md2>
<div class="caption grey--text">Person</div>
<div>{{ project.person }}</div>
</v-flex>
<v-flex xs6 sm4 md2>
<div class="caption grey--text">Due by</div>
<div>{{ project.due }}</div>
</v-flex>
<v-flex xs2 sm4 md2>
<v-btn flat color='red' slot='activator' class='right mx-0 my-0' @click='deleteProject()'>
<v-icon>delete</v-icon>
</v-btn>
<div>
<v-chip small :class="`${project.status} white--text caption mx-0`">{{ project.status}}</v-chip>
</div>
</v-flex>
</v-layout>
<v-divider></v-divider>
</v-card>我试着写的这个方法
deleteProject() {
console.log('deleted');
let idP = element.id; // obviously that i have problem with this line
db.collection('projects').doc(idP).delete()
}发布于 2019-03-25 15:05:46
我认为您正在从firebase获取projects,并且您将始终获得您正在获取的firebase文档的Id。您应该将该id与其他值一起存储。之后,当您调用deleteProject函数时,您可以像这样在该函数中传递您的Id。
<v-btn flat color='red' slot='activator' class='right mx-0 my-0' @click='deleteProject(project.Id)'>然后在您的函数中接收Id,如下所示
deleteProject(Id) {
console.log('deleted');
db.collection('projects').doc(Id).delete()
}希望这能解决你的问题。
https://stackoverflow.com/questions/55325787
复制相似问题