react-conditional-manager
Version:
A react component that handles conditional logic in a more elegant manner.
62 lines (45 loc) • 1.83 kB
Markdown
//img.shields.io/npm/v/react-conditional-manager.svg?style=flat)



A react component that handles conditional logic in a more elegant manner.
```bash
npm install --save react-conditional-manager
```
```js
import React from "react";
import ConditionalManager from "react-conditional-manager";
const Example = props => {
const conditions = [
{ loading: props.isLoading },
{ error: props.isError },
{ empty: props.conversations.length === 0 }
];
return (
<ConditionalManager conditions={conditions}>
{{
loading: <Loading />,
error: <Error />,
empty: <EmptyMessage message={"No conversations"} />,
default: <InfiniteScroll renderRow={renderRow} />
}}
</ConditionalManager>
);
};
export default Example;
```
- The children prop is an object literal with the different renderable states.
- isRequired
- An array of states with an associated conditional.
- First state to not appear in the array, becomes the default state and is rendered if all other conditionals return falsy.
- If all states are listed and all conditionals return falsy then the ConditionalManager will render null.
- default = []
- This object takes all properties and merges them as props into whichever state gets rendered.
- default = {}
![NPM version](https: