Debug when something changes in react. Relevant for React.memo
, useMemo
or useEffect
.
Example usage:
import { memo, useState, useCallback } from "react";
interface ExampleProps {
name: string;
id: number;
}
function Example(props: ExampleProps) {
const {name, id} = props;
const [value, setValue] = useState("");
const onChange = useCallback((event) => { setValue(event.target.value) }, []);
console.log("=== Render <Example> ===");
useDebugChanges("props", props);
useDebugChanges("state", { value, onChnage });
return (
<div>
Name: {name}<br/>
Id: {name}<br/>
<inpuz value={value} onChange={onChange}/>
</div>
);
}
export default memo(Example);