Skip to content

Instantly share code, notes, and snippets.

@jermsam
Last active June 28, 2018 20:27
Show Gist options
  • Save jermsam/2aed3a6138ce779453eaca2b95373ec6 to your computer and use it in GitHub Desktop.
Save jermsam/2aed3a6138ce779453eaca2b95373ec6 to your computer and use it in GitHub Desktop.
import React , {Component} from 'react'
import PropTypes from 'prop-types'
import { connect } from 'react-redux';
import { compose } from 'recompose';
import {services} from '../../services'
class WithNetworks extends Component{
componentDidMount(){
const { findNetworks}=this.props
findNetworks().then(res=>console.log(res))
}
render(){
const {render,networks,createNetwork}=this.props
return <div>{render({networks,createNetwork})}</div>
}
}
WithNetworks.propTypes={
render:PropTypes.func.isRequired,
networks:PropTypes.arrayOf(PropTypes.shape({})),
findNetworks:PropTypes.func.isRequired,
createNetwork:PropTypes.func.isRequired,
}
WithNetworks.defaultProps={
networks:null
}
const mapStateToProps = (state) => ({
networks: state.brandState.store && state.brandState.store.records,
});
/*
api.service('/brands').on('created', (data) => {
services.brands.onCreated(data);
})
*/
const mapDispatchToProps = () =>(
{
findNetworks: () =>services.brands.find(),
createNetwork:(data)=>services.brands.create(data)
}
)
export default compose(
connect(mapStateToProps,mapDispatchToProps)
) (WithNetworks);
import React , {Component} from 'react'
import PropTypes from 'prop-types'
import { connect } from 'react-redux';
import { compose } from 'recompose';
import {services} from '../../services'
class WithNetworks extends Component{
componentDidMount(){
const { findNetworks}=this.props
findNetworks().then(res=>console.log(res))
}
render(){
const {render,networks,createNetwork}=this.props
return <div>{render({networks,createNetwork})}</div>
}
}
WithNetworks.propTypes={
render:PropTypes.func.isRequired,
networks:PropTypes.arrayOf(PropTypes.shape({})),
findNetworks:PropTypes.func.isRequired,
createNetwork:PropTypes.func.isRequired,
}
WithNetworks.defaultProps={
networks:null
}
const mapStateToProps = (state) => ({
networks: state.brandState.store && state.brandState.store.records,
});
/*
api.service('/brands').on('created', (data) => {
services.brands.onCreated(data);
})
*/
const mapDispatchToProps = () =>(
{
findNetworks: () =>services.brands.find(),
createNetwork:(data)=>services.brands.create(data)
}
)
export default compose(
connect(mapStateToProps,mapDispatchToProps)
) (WithNetworks);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment