import React, {PureComponent} from "react"; import {connect} from 'react-redux'; import {FeatureTitle, HomeList, BlogList} from "../style"; import {actionCreators} from "../store"; import {Link} from "react-router-dom"; import {getTime} from "../../../lib/public"; import PagInation from '../../../components/PagInation'; const List = (props) => { const {blogList} = props; const list = blogList.toJS(); const Class = ['blog-item post-list-show left', 'blog-item post-list-show right']; return ( {list.map((item, index) => { return (
发布于 {getTime(item.createTime)}

{item.title}

{item.views} 热度 {item.comments} 评论 {item.categoryName && {item.categoryName} }

{item.summary}

) })}
) }; class ListWrapper extends PureComponent { render() { const {page, finished, loading} = this.props; return (

Discovery

{List(this.props)}
) } componentDidMount() { if (!this.props.isList) { this.props.getBlogList(1, true); } } } const mapState = (state) => { return { blogList: state.getIn(['home', 'blogList']), page: state.getIn(['home', 'articlePage']), finished: state.getIn(['home', 'finished']), loading: state.getIn(['home', 'loading']), isList: state.getIn(['home', 'isList']), } }; const mapDispatch = (dispatch) => { return { getBlogList(page, override) { dispatch(actionCreators.getBlogList(page, override)) }, } }; export default connect(mapState, mapDispatch)(ListWrapper);