-
Notifications
You must be signed in to change notification settings - Fork 105
Open
Open
useMap's set() should not re-render when setting a key to the same value it's currently set to#1655Description
What is the current behavior?
>">const [count, setCount] = useState(0)
const map = useMap([['count', 0]])
console.log('rerender')
return <>
<button type="button" onClick={() => setCount(0)}>Click statebutton>
<button type="button" onClick={() => map.set('count', 0)}>Click mapbutton>
>
const map = useMap([['count', 0]])
console.log('rerender')
return <>
<button type="button" onClick={() => setCount(0)}>Click statebutton>
<button type="button" onClick={() => map.set('count', 0)}>Click mapbutton>
>
Clicking on the "Click state" button multiple times in a row shows "rerender" only once in the console, whereas clicking on the "Click map" button shows it for every click.
Steps to Reproduce
See above.
What is the expected behavior?
It should behave like useState().
Environment Details
@react-hookz/webversion: 25.1.1reactversion: 18.3.21react-domversion: 18.3.7typescriptversion: -- OS: macOS
- Browser: Chrome, Safari, and Firefox
- Did this work in previous versions? I don't know
Metadata
Metadata
Assignees
Labels
No labels