Files
test-product-compare-react/src/containers/Home/index.js
2018-07-05 16:41:28 +01:00

40 lines
1017 B
JavaScript

import React, {Component} from 'react'
import {bindActionCreators} from 'redux'
import {Compare, ProductList} from '../../components'
import * as productActions from '../../actions/product'
import {connect} from 'react-redux'
class Home extends Component {
componentWillMount() {
this.props.actions.getProducts()
}
render() {
const {products, actions} = this.props;
const compareProducts = products.filter(product => product.compare);
return (
<div className="home mt-5">
<div className="row">
<div className="col-12">
<h2 className="mb-3">Compare Products</h2>
</div>
</div>
<ProductList products={products} compare={actions.compare}/>
{compareProducts.length >= 2 &&
<Compare products={compareProducts}/>
}
</div>
)
}
}
export default connect(
state => ({
products: state.product.products
}),
dispatch => ({
actions: bindActionCreators(productActions, dispatch)
})
)(Home)