import React, { Component } from 'react'; import { Link } from 'react-router-dom'; import { Menu, Icon, List, Avatar,Row, Col,Tag,Pagination} from 'antd'; import {getImageUrl} from 'educoder'; import axios from 'axios'; import './Competitionsindex.css'; import NoneData from "../../courses/coursesPublic/NoneData"; const { SubMenu } = Menu; const IconText = ({ type, text }) => ( {text} ); class CompetitionsIndex extends Component{ constructor(props) { super(props) this.state={ current: 'all', datas:undefined, page:1, category:undefined } } componentDidMount(){ window.document.title = '竞赛'; let{category,page}=this.state; this.getdata(category,page) } getdata=(category,page)=>{ const Url =`/competitions.json`; axios.get(Url,{params:{ category:category, page:page, per_page:15, } }).then((response) => { if(response.status===200){ this.setState({ datas:response.data.competitions, count:response.data.count, }) } }) .catch(function (error) { console.log(error); }); } handleClick = e => { this.setState({ current: e.key, }); let{category,page}=this.state; this.getdata(e.key,page) }; setcompetitonurl=(url)=>{ if(url!=null){ this.props.history.replace(url); } } PaginationCourse=(pageNumber)=>{ let {category}=this.state; this.setState({ page: pageNumber, }) this.getdata(category,pageNumber); } render() { let {datas,page,count}=this.state; return (
全部 即将发布 进行中 往期比赛
{datas===undefined?"":datas.length===0?"": (
{item.description===null||item.description===undefined||item.description===""?:""} 竞赛时间: 2019-08-07 24: 00~2019-09-10 24: 00, 报名截止时间:2019-08-07 08:10, ]} extra={
奖金
浏览数
报名数
¥{item.bonus}
{item.competition_status==="nearly_published"?"--":item.visits_count}
{item.competition_status==="nearly_published"?"--":item.member_count}
} > this.setcompetitonurl(item.competition_status==="ended"?null:item.competition_status==="nearly_published"?`/newcompetitions/${item.identifier}/common_header`:item.competition_status==="progressing"?`/newcompetitions/${item.identifier}/common_header`:null)} >{item.name}{item.sub_title===null?"":{ item.sub_title }} } /> {item.description}
) } />} {datas===undefined?'none':datas.task_count >20 ?
:""} { datas===undefined?"":datas && datas.length===0? :"" }
) } } export default CompetitionsIndex;