Add useUpdate

This commit is contained in:
Chalarangelo
2021-09-03 11:28:21 +03:00
parent d23d6a3670
commit 5233b1cf6e

31
snippets/useUpdate.md Normal file
View File

@ -0,0 +1,31 @@
---
title: useUpdate
tags: components,reducer,beginner
firstSeen: 2021-09-24T05:00:00-04:00
---
Forces the component to re-render when called.
- Use the `useReducer()` hook that creates a new object every time it's updated and return its dispatch.
```jsx
const useUpdate = () => {
const [, update] = React.useReducer(() => ({}));
return update;
};
```
```jsx
const MyApp = () => {
const update = useUpdate();
return (
<>
<div>Time: {Date.now()}</div>
<button onClick={update}>Update</button>
</>
);
};
ReactDOM.render(<MyApp />, document.getElementById('root'));
```