Sfoglia il codice sorgente

If button is clicked/unclicked during a session, increment likes count without reloading ajax

sbkwgh 8 anni fa
parent
commit
01b3767569
1 ha cambiato i file con 12 aggiunte e 2 eliminazioni
  1. 12 2
      src/components/HeartButton.vue

+ 12 - 2
src/components/HeartButton.vue

@@ -15,16 +15,26 @@
 	export default {
 		name: 'HeartButton',
 		props: ['value', 'likes', 'likeable'],
+		data () {
+			return {
+				likedDuringSession: false
+			}
+		},
 		computed: {
 			_likes () {
-				let likes = this.likes || 0
+				let likes = this.likes.length
 
-				if(this.value) {
+				if(this.likedDuringSession) {
 					return likes + 1
 				} else {
 					return likes
 				}
 			}
+		},
+		watch: {
+			value () {
+				this.likedDuringSession = this.value
+			}
 		}
 	}
 </script>