]> git.ipfire.org Git - thirdparty/vuejs/pinia.git/commitdiff
chore: add talk demo
authorEduardo San Martin Morote <posva13@gmail.com>
Mon, 15 Nov 2021 15:48:16 +0000 (16:48 +0100)
committerEduardo San Martin Morote <posva13@gmail.com>
Mon, 15 Nov 2021 15:48:16 +0000 (16:48 +0100)
packages/playground/src/stores/demo-counter.ts [new file with mode: 0644]
packages/playground/src/views/DemoCounter.vue [new file with mode: 0644]

diff --git a/packages/playground/src/stores/demo-counter.ts b/packages/playground/src/stores/demo-counter.ts
new file mode 100644 (file)
index 0000000..59235f4
--- /dev/null
@@ -0,0 +1,11 @@
+import { defineStore, acceptHMRUpdate } from 'pinia'
+
+export const useCounter = defineStore('counter', {
+  state: () => ({
+    n: 0,
+  }),
+})
+
+if (import.meta.hot) {
+  import.meta.hot.accept(acceptHMRUpdate(useCounter, import.meta.hot))
+}
diff --git a/packages/playground/src/views/DemoCounter.vue b/packages/playground/src/views/DemoCounter.vue
new file mode 100644 (file)
index 0000000..c80cb1b
--- /dev/null
@@ -0,0 +1,21 @@
+<template>
+  <h2>Counter Store</h2>
+
+  <p>Counter :{{ counter.n }}. Double: {{ counter.double }}</p>
+
+  <button @click="counter.n++">Increment</button>
+
+  <hr />
+
+  <p>
+    <code>counter.$state</code>:
+  </p>
+
+  <pre>{{ counter.$state }}</pre>
+</template>
+
+<script lang="ts" setup>
+import { useCounter } from '../stores/demo-counter'
+
+const counter = useCounter()
+</script>