Skip to content

Commit

Permalink
Document how to build for older browsers
Browse files Browse the repository at this point in the history
Document how to transpile your node_modules with babel to be able to target older browsers.
  • Loading branch information
mbark committed Jan 28, 2020
1 parent 34ad998 commit b4b80bc
Showing 1 changed file with 26 additions and 0 deletions.
26 changes: 26 additions & 0 deletions docs/getting-started/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,29 @@ yarn add react-async

> This package requires `react` as a peer dependency. Please make sure to install that as well. If you want to use the
> `useAsync` hook, you'll need `react@16.8.0` or later.
## Targeting older browsers

If you are targeting older browsers you need to transpile `react-async` with babel.

To transpile `node_modules` with babel you need to use a `babel.config.js`, for more information see [babel's documentation](https://babeljs.io/docs/en/configuration#whats-your-use-case).

In your `webpack.config.js` make sure that the rule for `babel-loader`:
* doesn't exclude `node_modules` from matching via the `exclude` pattern;
* excludes `core-js` as it shouldn't be transpiled;
* is passed the `configFile` option pointing to the `babel.config.js` file.

```
{
test: /\.(js|jsx)$/,
exclude: /\/node_modules\/core-js\//,
use: [{
loader: 'babel-loader',
options: {
configFile: './babel.config.js',
// This is recommended to enable when transpiling node_modules to improve build times for consecutive builds.
cacheDirectory: true,
}
}]
}
```

0 comments on commit b4b80bc

Please sign in to comment.