import React from "react"; import {Button, Card, Col, Container, ListGroup, Row} from "react-bootstrap"; import {Page} from "../ui/Page"; import {ActivityDetail, PageProps} from "../entity"; import {MyDialog} from "../ui/MyDialog"; import {Activity} from "../ui/Activity"; import {Input} from "../ui/InputGroup"; import {activityObj} from "../ui/TestData"; import {API, Method, request} from "../interface"; import {FindActivityMessage, FindActivityRes, FindActivityTransform} from "../result"; /** * 首页 */ export class IndexMenu extends React.Component<{ user:string }, { //活动数据 activityList?:Array>; //分页信息 page?:PageProps; //活动 activity?:ActivityDetail; //打开活动 openActivity:boolean; //检索活动标题 title:string; result:JSX.Element|null; }>{ constructor(props: Readonly) { super(props); this.state={ result: null,openActivity:false, title:"" } } componentDidMount() { this.loadActivity(1) } /** * 报名活动 * @param activityId */ applyActivity(activityId:number){ console.debug("报名活动"+activityId) } /** * 查找活动 * @param activityId */ loadActivityWithId(activityId:number):ActivityDetail{ console.debug("activityId="+activityId) return activityObj } /** * 加载活动列表 * @param page */ loadActivity(page:number){ console.debug("检索活动关键字:"+this.state.title) let that=this request(API.main.activity.find,Method.GET,{ title:this.state.title, currentPage:page+"" },new FindActivityTransform(),function (res:FindActivityRes) { switch(res.customResult){ case FindActivityMessage.fail: that.setState({ result:

活动加载失败,请联系管理员

});break; case FindActivityMessage.ok: that.setState({ activityList:res.dataList, page:res.page });break } }) } render() { const rowList=this.state.activityList?this.state.activityList.map((activities:Array, index:number)=> {activities.map((activity:ActivityDetail, subIndex:number)=> 活动图片 {activity.title}

{activity.content}

)}
):null return ( this.setState({title:value})}/> {/*this.loadActive(page)} currentPage={this.state.page.currentPage} totalPage={this.state.page.totalPage} pageSize={this.state.page.pageSize}/>*/} {rowList} {this.state.page?this.loadActivity(page)} currentPage={this.state.page.currentPage} totalPage={this.state.page.totalPage} pageSize={this.state.page.pageSize}/>:null} {this.state.activity?this.applyActivity(activeId)} />} open={this.state.openActivity} titleId="view-active" menuName="活动详情" onClose={()=>this.setState({activity:undefined,openActivity:false})}/>:null} this.setState({result:null})}/> ) } }