summaryrefslogtreecommitdiff
path: root/examples/with-nanostores/src/components/AdminsPreact.jsx
blob: 93fecd878249107799a70b08fd772f7a421dffea (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import { h, Fragment } from 'preact';
import { useStore } from 'nanostores/preact';

import { admins } from '../store/admins.js';
import { counter, increaseCounter, decreaseCounter } from '../store/counter.js';

const AdminsPreact = () => {
  const list = useStore(admins);
  const count = useStore(counter);

  return (
    <>
      <h1>Preact</h1>
      <ul>
        {list.map((user) => (
          <li key={user.name}>{JSON.stringify(user, null, 2)}</li>
        ))}
      </ul>
      <div>
        <h3>Counter</h3>
        <p>{count}</p>
        <button onClick={decreaseCounter}>-1</button>
        <button onClick={increaseCounter}>+1</button>
      </div>
    </>
  );
};

export default AdminsPreact;