Skip to content

Commit fc642bb

Browse files
committed
Listen for movie changes and save movie.
1 parent 0f88562 commit fc642bb

File tree

2 files changed

+20
-2
lines changed

2 files changed

+20
-2
lines changed

src/components/MovieItem.vue

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,5 +37,13 @@ export default {
3737
required: true,
3838
},
3939
},
40+
watch: {
41+
item: {
42+
handler(newValue) {
43+
this.$emit('change', newValue);
44+
},
45+
deep: true,
46+
},
47+
},
4048
};
4149
</script>

src/pages/MovieList.vue

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,17 @@
11
<template>
22
<loading-indicator v-if="isLoading" message="Loading movies..." />
33
<div v-else class="row">
4-
<movie-item v-for="movie in movies" :item="movie" :key="movie.id" />
4+
<movie-item
5+
v-for="movie in movies"
6+
:item="movie"
7+
:key="movie.id"
8+
@change="onChange"
9+
/>
510
</div>
611
</template>
712

813
<script>
9-
import { getMovies } from '@/api';
14+
import { getMovies, saveMovie } from '@/api';
1015
import MovieItem from '@/components/MovieItem.vue';
1116
import LoadingIndicator from '@/components/LoadingIndicator.vue';
1217
@@ -29,5 +34,10 @@ export default {
2934
this.isLoading = false;
3035
});
3136
},
37+
methods: {
38+
onChange(movie) {
39+
saveMovie(movie);
40+
},
41+
},
3242
};
3343
</script>

0 commit comments

Comments
 (0)