donal
2018-04-04 ba91cd226ae8fa8fbc8a9de3670358bdb09dabb7
commit | author | age
991c76 1 <template>
D 2   <div class="home">
3     <img src="../assets/logo.png">
a34f1d 4     <NewTodo placeholderMsg="Add a new todo" @NEWTODOADDED="newTodoAdded"/>
D 5     <TodoItem todoItem="Have a beers"/>
6     <ListOfTodos todos="this.todos"/>
82de6c 7
D 8     <button @click=newTodoAdded>add todo</button>
9     <button>getTodos</button>  
10     <code>{{ allTodos }}</code>
991c76 11   </div>
82de6c 12
991c76 13 </template>
D 14
15 <script>
16 // @ is an alias to /src
17 import NewTodo from "@/components/NewTodo.vue";
a34f1d 18 import TodoItem from "@/components/TodoItem.vue";
D 19 import ListOfTodos from "@/components/ListOfTodos.vue";
20
21 import EventBus from "@/services/EventBus";
22
991c76 23 export default {
D 24   name: "Catalog",
25   components: {
a34f1d 26     NewTodo,
D 27     TodoItem,
28     ListOfTodos
29   },
82de6c 30     // load todos on start
D 31   created () {
32     this.$store.dispatch('loadTodos')
33   },
34     // be able to get the data
35   computed: {
36     allTodos () {
37       return this.$store.getters.todos
38     },
39   },
a34f1d 40   methods: {
530b0a 41     newTodoAdded (e) {
D 42       this.$store.dispatch('setNewTodo','some random strings or whatever')
43       this.$store.dispatch('addTodo')
44       this.$store.dispatch('clearNewTodo')
45     },
991c76 46   }
D 47 };
48 </script>