npm.io
1.0.2 • Published 7 years ago

react-to-component

Licence
MIT
Version
1.0.2
Deps
1
Size
43 kB
Vulns
0
Weekly
0
Stars
2

react-to-component

Travis npm package Coveralls semantic-release

Blazing fast and tiny library that enables you to create react components (componentify) imperative or functional apis.

Install

yarn add react-to-component

Aims to be:

  • Blazing fast
  • Defensive code friendly
  • Async first
  • Memory leak safe
  • Test friendly

A quick example

<ToComponent original={oldLegacyCodeApi} params={[1, 2, 3]}>
  {({ loading, error, data }) =>
    loading ? "Loading" : error ? "Oops, error" : JSON.stringify(data)
  }
</ToComponent>

Live examples

Configuration

Prop Required Default Type Description
original (...params: P[]) => Promise<T> or T The original function to be encapsulated
params P[] The params that will be used in the function invocation
children ({ data: T or null, error: Error or null, loading: boolean }) => JSX.Element or JSX.Element[] or null The render prop that controls you data flow
parametersDidChange Params equality (previousParams: P[], nextParams: P[]) => boolean Ability to supply a custom check for parameter equality, use this if for example you need to ignore some parameters for caching purposes

Keywords