#ドキュメントの自動IDを取得して削除機能を実装したいです
下記画像にある赤で囲った箇所、propsで受け取ったlistデータのlist.idを使って
ドキュメント内のフィールドの値(list.id)は取得できています。
こちらの値を参照して投稿の削除を試みましたが青で囲った自動取得したIDを参照していないためか
削除機能が実装されない状況です。
そもそもこのlist.idを使う必要なく、自取得された青で囲ったドキュメントIDを
取得できれば削除できるかと思われますが、青で囲った箇所の参照方法を知りたいです。
分かる方いらっしゃいましたらお力添えをいただきたいです。
よろしくお願い致します。
###list.vue
html
1<button class="hide-btn" @click="deletePost()">×</button>
js
1<script> 2import firebase from "firebase"; 3import Vue from "vue"; 4import VueSwal from "vue-swal"; 5Vue.use(VueSwal); 6 7export default { 8 data() { 9 return { 10 userid: "", 11 }; 12 }, 13 props: { 14 //親コンポーネントから子コンポーネントに文字列、数値、配列やオブジェクトなどの値を渡す 15 list: { 16 type: Object, 17 //list内にObject型で格納されてる 18 }, 19 index: { 20 type: Number, 21 //index内にNumber型で格納されてる 22 }, 23 }, 24 deletePost() { 25 // if (this.userid == this.$route.params.uid) { 26 firebase 27 .firestore() 28 .collection("posts") 29 .doc(this.list.id) 30 .delete(); 31 console.log(this.list.id); 32 this.$swal({ 33 title: "内容確認", 34 text: "投稿を削除しますか?", 35 icon: "warning", 36 buttons: true, 37 dangerMode: true, 38 }).then((willDelete) => { 39 if (willDelete) { 40 this.$swal("投稿を削除しました", { 41 icon: "success", 42 }); 43 this.$router.go({ 44 path: `/board/${this.$route.params.uid}`, 45 force: true, 46 }); 47 } else { 48 this.$swal("キャンセルしました。"); 49 } 50 }); 51 // } 52 }, 53}, 54</script>
回答1件
あなたの回答
tips
プレビュー