import { Card, Col, Form, List, Row, Select, Typography } from 'antd'; import React, { Component } from 'react'; import { Dispatch } from 'redux'; import { FormComponentProps } from 'antd/es/form'; import { connect } from 'dva'; import moment from 'moment'; import AvatarList from './components/AvatarList'; import { StateType } from './model'; import { ListItemDataType } from './data.d'; import StandardFormRow from './components/StandardFormRow'; import TagSelect from './components/TagSelect'; import styles from './style.less'; const { Option } = Select; const FormItem = Form.Item; const { Paragraph } = Typography; interface PAGE_NAME_UPPER_CAMEL_CASEProps extends FormComponentProps { dispatch: Dispatch; BLOCK_NAME_CAMEL_CASE: StateType; loading: boolean; } class PAGE_NAME_UPPER_CAMEL_CASE extends Component { componentDidMount() { const { dispatch } = this.props; dispatch({ type: 'BLOCK_NAME_CAMEL_CASE/fetch', payload: { count: 8, }, }); } render() { const { BLOCK_NAME_CAMEL_CASE: { list = [] }, loading, form, } = this.props; const { getFieldDecorator } = form; const cardList = list ? ( rowKey="id" loading={loading} grid={{ gutter: 24, xl: 4, lg: 3, md: 3, sm: 2, xs: 1 }} dataSource={list} renderItem={item => ( } > {item.title}} description={ {item.subDescription} } />
{moment(item.updatedAt).fromNow()}
{item.members.map(member => ( ))}
)} /> ) : null; const formItemLayout = { wrapperCol: { xs: { span: 24 }, sm: { span: 16 }, }, }; return (
{getFieldDecorator('category')( 类目一 类目二 类目三 类目四 类目五 类目六 类目七 类目八 类目九 类目十 类目十一 类目十二 , )} {getFieldDecorator('author', {})( , )} {getFieldDecorator('rate', {})( , )}
{cardList}
); } } const WarpForm = Form.create({ onValuesChange({ dispatch }: PAGE_NAME_UPPER_CAMEL_CASEProps) { // 表单项变化时请求数据 // 模拟查询表单生效 dispatch({ type: 'BLOCK_NAME_CAMEL_CASE/fetch', payload: { count: 8, }, }); }, })(PAGE_NAME_UPPER_CAMEL_CASE); export default connect( ({ BLOCK_NAME_CAMEL_CASE, loading, }: { BLOCK_NAME_CAMEL_CASE: StateType; loading: { models: { [key: string]: boolean } }; }) => ({ BLOCK_NAME_CAMEL_CASE, loading: loading.models.BLOCK_NAME_CAMEL_CASE, }), )(WarpForm);