summaryrefslogtreecommitdiff
path: root/examples/framework-multiple/src/components/SolidCounter.tsx
blob: 0ec274bb4955e1773173be6ae5ef13ba030b922f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import { createSignal } from "solid-js";

/** a counter written with Solid */
export default function SolidCounter({ children }) {
  const [count, setCount] = createSignal(0);
  const add = () => setCount(count() + 1);
  const subtract = () => setCount(count() - 1);

  return (
    <>
      <div id="solid" class="counter">
        <button onClick={subtract}>-</button>
        <pre>{count()}</pre>
        <button onClick={add}>+</button>
      </div>
      <div class="children">
        {children}
      </div>
    </>
  );
}