Skip to content

Commit

Permalink
Version 7.2 docs
Browse files Browse the repository at this point in the history
  • Loading branch information
timdorr committed Feb 27, 2020
1 parent 2042a10 commit 24de6e9
Show file tree
Hide file tree
Showing 11 changed files with 2,653 additions and 0 deletions.
35 changes: 35 additions & 0 deletions website/versioned_docs/version-7.2/api/batch.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
---
id: version-7.2-batch
title: batch
sidebar_label: batch()
hide_title: true
original_id: batch
---

# `batch()`

```js
batch(fn: Function)
```

React's `unstable_batchedUpdates()` API allows any React updates in an event loop tick to be batched together into a single render pass. React already uses this internally for its own event handler callbacks. This API is actually part of the renderer packages like ReactDOM and React Native, not the React core itself.

Since React-Redux needs to work in both ReactDOM and React Native environments, we've taken care of importing this API from the correct renderer at build time for our own use. We also now re-export this function publicly ourselves, renamed to `batch()`. You can use it to ensure that multiple actions dispatched outside of React only result in a single render update, like this:

```js
import { batch } from 'react-redux'

function myThunk() {
return (dispatch, getState) => {
// should only result in one combined re-render, not two
batch(() => {
dispatch(increment())
dispatch(increment())
})
}
}
```

## References

- [`unstable_batchedUpdates()` API from React](https://github.com/facebook/react/commit/b41883fc708cd24d77dcaa767cde814b50b457fe)

0 comments on commit 24de6e9

Please sign in to comment.