Store arbitrary state in redux with a similar API to setState
npm install @dabapps/react-set-props --save --save-exact
import { withSetProps, SetPropsInterface } from '@dabapps/react-set-props';
interface ExternalProps {
buttonText: string;
}
interface Props {
count: number;
}
const MyComponent = ({buttonText, count, setProps}: ExternalProps & SetPropsInterface<Props>) => (
<p>
Count: {count}
<button onClick={() => setProps({count: count + 1})}>
{buttonText}
</button>
</p>
);
const getInitialProps = (props: ExternalProps) => ({
count: 0
});
export default withSetProps<Props, ExternalProps>(getInitialProps)(MyComponent);
import { setPropsReducer } from '@dabapps/react-set-props';
combineReducers({
setPropsReducer
});
import { withSetProps } from '@dabapps/react-set-props';
const MyComponent = ({buttonText, count, setProps}) => (
<p>
Count: {count}
<button onClick={() => setProps({count: count + 1})}>
{buttonText}
</button>
</p>
);
const getInitialProps = (props) => ({
count: 0
});
export default withSetProps(getInitialProps)(MyComponent);
import { setPropsReducer } from '@dabapps/react-set-props';
combineReducers({
setPropsReducer
});
For guidelines regarding the code of conduct when contributing to this repository please review https://www.dabapps.com/open-source/code-of-conduct/