CounterControls.vue 873 B

1234567891011121314151617181920212223242526272829303132
  1. <template>
  2. <div>
  3. Value: {{ count }}
  4. <button @click="increment">+</button>
  5. <button @click="decrement">-</button>
  6. <button @click="incrementIfOdd">Increment if odd</button>
  7. <button @click="incrementAsync">Increment async</button>
  8. <div>
  9. <div>Recent History (last 5 entries): {{ recentHistory }}</div>
  10. </div>
  11. </div>
  12. </template>
  13. <script>
  14. import { computed } from 'vue'
  15. import { useStore } from 'vuex'
  16. export default {
  17. setup () {
  18. const store = useStore()
  19. return {
  20. count: computed(() => store.getters.count),
  21. recentHistory: computed(() => store.getters.recentHistory),
  22. increment: () => store.dispatch('increment'),
  23. decrement: () => store.dispatch('decrement'),
  24. incrementIfOdd: () => store.dispatch('incrementIfOdd'),
  25. incrementAsync: () => store.dispatch('incrementAsync')
  26. }
  27. }
  28. }
  29. </script>