import React, { useState } from
"react"
;
const App = () => {
const [isDrawing, setIsDrawing] = useState(
false
);
const [prevX, setPrevX] = useState(0);
const [prevY, setPrevY] = useState(0);
const handleMouseDown = (event) => {
setIsDrawing(
true
);
setPrevX(event.nativeEvent.offsetX);
setPrevY(event.nativeEvent.offsetY);
};
const handleMouseUp = () => {
setIsDrawing(
false
);
};
const handleMouseMove = (event) => {
if
(isDrawing) {
const canvas = event.target;
const context = canvas.getContext(
"2d"
);
const x = event.nativeEvent.offsetX;
const y = event.nativeEvent.offsetY;
context.strokeStyle =
"black"
;
context.lineWidth = 2;
context.beginPath();
context.moveTo(prevX, prevY);
context.lineTo(x, y);
context.stroke();
setPrevX(x);
setPrevY(y);
}
};
return
(
<div>
<h2>Simple Drawing App</h2>
<canvas
width=
"400"
height=
"300"
style={{ border:
"1px solid black"
}}
onMouseDown={handleMouseDown}
onMouseUp={handleMouseUp}
onMouseMove={handleMouseMove}
>
Your browser does not support the canvas element.
</canvas>
</div>
);
};
export
default
App;