From 8480d4ef05d995ee67c1460cf273c899fa59e89c Mon Sep 17 00:00:00 2001
From: Cristiano Magro <cristiano.magro@vola.it>
Date: Sat, 28 Dec 2024 23:15:49 +0100
Subject: [PATCH] emitting custom event

---
 07 - development setup/vue-cli-01-a-new-vue-project/src/App.vue |   14 +++++++++++++-
 1 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/07 - development setup/vue-cli-01-a-new-vue-project/src/App.vue b/07 - development setup/vue-cli-01-a-new-vue-project/src/App.vue
index 08bedae..a9ca593 100644
--- a/07 - development setup/vue-cli-01-a-new-vue-project/src/App.vue
+++ b/07 - development setup/vue-cli-01-a-new-vue-project/src/App.vue
@@ -7,10 +7,12 @@
       <friend-contact 
       v-for="friend in friends"
       :key="friend.id"
+      :id="friend.id"
       :name="friend.name" 
       :phone-number="friend.phone" 
       :email-address="friend.email"
-      :is-favorite="true"
+      :is-favorite="friend.isFavorite"
+      @toggle-favorite="toggleFavoriteStatus"
       ></friend-contact>
     </ul>
   </section>
@@ -26,16 +28,26 @@
           name: "Manuel Lorenz",
           phone: "01234 5678 991",
           email: "manuel@localhost.com",
+          isFavorite: true,
         },
         {
           id: "julie",
           name: "Julie Jones",
           phone: "09876 543 221",
           email: "julie@localhost.com",
+          isFavorite: true,          
         },
       ],
     }
   },
+  methods:{
+    toggleFavoriteStatus(friendId){
+      const found = this.friends.find( 
+        (friend) => friend.id === friendId
+      );
+      found.isFavorite = !found.isFavorite;
+    }
+  }
 };
 </script>
 

--
Gitblit v1.8.0