Socket
Socket
Sign inDemoInstall

hoist-non-react-statics

Package Overview
Dependencies
1
Maintainers
1
Versions
33
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

hoist-non-react-statics

Copies non-react specific statics from a child component to a parent component


Version published
Maintainers
1
Weekly downloads
15,684,128
decreased by-10.49%

Weekly downloads

Package description

What is hoist-non-react-statics?

The hoist-non-react-statics package is used to copy non-react specific statics from a child component to a parent component. This is often used in higher-order component (HOC) patterns, where the HOC wraps a child component but needs to expose the same static methods as the child.

What are hoist-non-react-statics's main functionalities?

Hoisting non-react statics

This feature allows you to automatically copy static methods from a child component to a parent component, which is useful when creating higher-order components that should not interfere with the static methods of the wrapped component.

import hoistNonReactStatics from 'hoist-non-react-statics';

function enhance(WrappedComponent) {
  class Enhance extends React.Component {
    /* ... */
  }
  hoistNonReactStatics(Enhance, WrappedComponent);
  return Enhance;
}

// Usage
// If WrappedComponent had static method foo(), Enhance will also have it.

Other packages similar to hoist-non-react-statics

Readme

Source

hoist-non-react-statics

NPM version Build Status Coverage Status Dependency Status devDependency Status

Copies non-react specific statics from a child component to a parent component. Similar to Object.assign, but with React static keywords blacklisted from being overridden.

$ npm install --save hoist-non-react-statics

Usage

import hoistNonReactStatics from 'hoist-non-react-statics';

hoistNonReactStatics(targetComponent, sourceComponent);

If you have specific statics that you don't want to be hoisted, you can also pass a third parameter to exclude them:

hoistNonReactStatics(targetComponent, sourceComponent, { myStatic: true, myOtherStatic: true });

What does this module do?

See this explanation from the React docs.

Compatible React Versions

Please use latest 3.x. Versions prior to 3.x will not support ForwardRefs.

hoist-non-react-statics VersionCompatible React Version
3.x0.13-16.x With ForwardRef Support
2.x0.13-16.x Without ForwardRef Support
1.x0.13-16.2

Browser Support

This package uses Object.defineProperty which has a broken implementation in IE8. In order to use this package in IE8, you will need a polyfill that fixes this method.

License

This software is free to use under the Yahoo Inc. BSD license. See the LICENSE file for license text and copyright information.

Third-party open source code used are listed in our package.json file.

Keywords

FAQs

Last updated on 22 Jan 2020

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc