summaryrefslogtreecommitdiff
path: root/examples/framework-preact/src
diff options
context:
space:
mode:
Diffstat (limited to 'examples/framework-preact/src')
-rw-r--r--examples/framework-preact/src/components/Counter.tsx8
-rw-r--r--examples/framework-preact/src/pages/index.astro12
2 files changed, 7 insertions, 13 deletions
diff --git a/examples/framework-preact/src/components/Counter.tsx b/examples/framework-preact/src/components/Counter.tsx
index 5d702fb42..61a9f9d5a 100644
--- a/examples/framework-preact/src/components/Counter.tsx
+++ b/examples/framework-preact/src/components/Counter.tsx
@@ -1,9 +1,11 @@
import { h, Fragment } from 'preact';
+import { useState } from 'preact/hooks';
import './Counter.css';
-export default function Counter({ children, count }) {
- const add = () => count.value++;
- const subtract = () => count.value--;
+export default function Counter({ children }) {
+ const [count, setCount] = useState(0);
+ const add = () => setCount((i) => i + 1);
+ const subtract = () => setCount((i) => i - 1);
return (
<>
diff --git a/examples/framework-preact/src/pages/index.astro b/examples/framework-preact/src/pages/index.astro
index b37295d7b..a6565f6c1 100644
--- a/examples/framework-preact/src/pages/index.astro
+++ b/examples/framework-preact/src/pages/index.astro
@@ -2,12 +2,8 @@
// Component Imports
import Counter from '../components/Counter';
-import { signal } from '@preact/signals';
-
// Full Astro Component Syntax:
// https://docs.astro.build/core-concepts/astro-components/
-
-const count = signal(0);
---
<html lang="en">
@@ -29,12 +25,8 @@ const count = signal(0);
</head>
<body>
<main>
- <Counter count={count} client:visible>
- <h1>Hello, Preact 1!</h1>
- </Counter>
-
- <Counter count={count} client:visible>
- <h1>Hello, Preact 2!</h1>
+ <Counter client:visible>
+ <h1>Hello, Preact!</h1>
</Counter>
</main>
</body>