32 lines
822 B
TypeScript
32 lines
822 B
TypeScript
// config = `{"libraries": ["TailwindCSS"]}`
|
|
// @ts-nocheck
|
|
const {useState, useEffect} = React;
|
|
|
|
function App() {
|
|
const [count, setCount] = useState(0);
|
|
useEffect(() => {
|
|
const timer = () => setCount(prev => prev + 1);
|
|
const token = setInterval(timer, 1000);
|
|
return () => clearInterval(token)
|
|
})
|
|
|
|
return (
|
|
<div className="p-2">
|
|
<p>Timer: {count}</p>
|
|
<button
|
|
className="shadow bg-pink-500 hover:bg-pink-400 focus:shadow-outline focus:outline-none text-white font-bold py-2 px-4 rounded"
|
|
type="button"
|
|
onClick={() => setCount(0)}>
|
|
Click Me
|
|
</button>
|
|
</div>
|
|
);
|
|
}
|
|
|
|
const root = ReactDOM.createRoot(
|
|
document.getElementById("root")
|
|
);
|
|
root.render(
|
|
<App/>
|
|
);
|