-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathmain.js
More file actions
39 lines (32 loc) · 820 Bytes
/
main.js
File metadata and controls
39 lines (32 loc) · 820 Bytes
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
30
31
32
33
34
35
36
37
38
39
import { createElement, render } from './micro-react';
import { useState } from './micro-react/render';
const handleChange = (e) => {
renderer(e.target.value);
};
const container = document.querySelector('#root');
// const renderer = (value) => {
// console.log(1);
// const element = createElement(
// 'div',
// null,
// createElement('input', {
// value: value,
// oninput: (e) => {
// handleChange(e);
// },
// }),
// createElement('h2', null, value)
// );
// render(element, container);
// };
// renderer('Hello');
const Counter = () => {
const [state, setState] = useState(1);
return createElement(
'h1',
{ onclick: () => setState((prev) => prev + 1) },
state
);
};
const element = createElement(Counter);
render(element, container);