import React from 'react' import { Popover, Row, Col, Icon, Divider } from 'antd' import { connect } from 'dva' import './groupSelector.less' class GroupSelector extends React.Component { constructor(props) { super(props); this.state = { visible: false } } hide = () => { this.setState({ visible: false, }); } handleVisibleChange = (visible) => { this.setState({ visible }); } render() { const { model, modelName, children, dispatch } = this.props; const { visible } = this.state; const grouplist = model.groupList; const pgroups = grouplist.filter(g => g.pcode === '-1'); const currentGroup = model.currentGroup; return ( { let cgroups = grouplist.filter(g => g.pcode === p.code && p.code !== '-1'); return { this.hide(); dispatch({ type: modelName + '/setCurrentGroup', group1: p }); }}> {{p.label}}{cgroups.length>0 && } { cgroups.map((c, i) => { this.hide(); dispatch({ type: modelName + '/setCurrentGroup', group1: p, group2: c }); }}> {{c.label}} {i === cgroups.length-1 ? '' : } ) } }) } > { children } ); } } export default connect()(GroupSelector);