react-props-stream
Utility belt for RxJS streams and React
API
withPropsStream
HOC
withPropsStream(
ownerPropsToChildProps: Observable<object> | (props$: Observable<object>) => Observable<object>,
BaseComponent: ReactElementType
): ReactComponent
Similar to recompose/mapPropsStream
Example: Component that displays an ever-increasing counter every second
import withPropsStream from 'react-props-stream'import timer from 'rxjs'import map from 'rxjs/operators' const numbers$ = const MyStreamingComponent =
props.url
when its value change
Example: Component that automatically fetches import createEventHandler from 'react-props-stream'import map distinctUntilChanged switchMap from 'rxjs/operators' const FetchComponent = // UsageReactDOM
streamingComponent
Similar to recompose/componentFromStream
import streamingComponent from 'react-props-stream'import map distinctUntilChanged switchMap from 'rxjs/operators' const FetchComponent = streamingComponent<url: string> props$
WithObservable
React component
import WithObservable from 'react-props-stream'import timer from 'rxjs'import map from 'rxjs/operators' const numbers$ = { return <WithObservable => <div>The number is num</div> </WithObservable> }
More examples
See more examples here: https://github.com/sanity-io/react-props-stream/tree/master/examples
Prior art
This is heavily inspired by recompose