@seyoon20087/react-loadable v5.6.2
Revised react-loadable
A drop-in replacement for upstream react-loadable
that features:
- No
React.StrictMode
warnings (i.e. removed usage of legacy context andUNSAFE_componentWillMount
) - Webpack plugin tweaked to work with Webpack 4.41.1+ (also works with v5)
- Types included by default (NB: you should remove
@types/react-loadable
, if you have installed)
I published this because the legacy context API will be removed in React 19 (see here and here), which is not a good news for projects like Docusaurus.
This package was published in the hope of resolving this issue like this.
Note
Note that the version starts with 5.6.0
to match semantic versioning.
This package is intended as a drop-in replacement for existing projects using react-loadable
.
That is, I do NOT plan to add new features, or address tree-shaking issues.
For new projects I recommend using React.lazy
or loadable-components
instead.
Requirements
This package uses the new React Context API (and the contextType
API), so your version of react
needs to be 16.6.0 or later.
The Webpack plugin also requires 4.41.1+ or later (it also works on v5).
To install (if you're on yarn):
yarn add react-loadable@npm:@seyoon20087/react-loadable
Note: The Babel plugin will not work if you install it via other means like yarn install @seyoon20087/react-loadable
itself.
To test it on a current framework (like Docusaurus), use the resolutions
or overrides
feature in your package.json
.
Example:
{
"resolutions": {
"react-loadable": "npm:@seyoon20087/react-loadable"
}
}
API Reference
The API reference is identical, so you should be able to use it without updating your code.
For more information, please refer to the upstream README.
The Manifest
type from react-loadable/webpack
is the only exception however I don't expect existing projects to break from working.
License
This package is licensed under MIT -- see LICENSE in this repo for more details.