import React, { useState, useEffect, useRef } from 'react'; import { Select } from 'antd'; import apis from '../../../../../../services/apis'; import request from '../../../../../../utils/request' const { Option } = Select; function usePrevious(props) { const ref = useRef(); useEffect(() => { ref.current = props; }); return ref.current; } /** * * * @param {*} props * @returns */ const BuildingSelect = props => { const [data, setData] = useState([]) const [value, setValue] = useState([]) const type = props.type const salesBatchId = props.salesBatchId useEffect(() => { getBuildList(); }, [props.salesBatchId]) const getBuildList = e => { if (salesBatchId && salesBatchId != 'undefine'){ request({ ...apis.house.buildingIdBySalesBatchId, urlData:{id: salesBatchId}, params: { pageNum: 1, pageSize: 999 } }).then(data => { setData(data) checkValue(data) // 默认选中第一个 }) } else{ request({ ...apis.building.buildingSelect, params: { pageNum: 1, pageSize: 999 } }).then(data => { setData(data) checkValue(data) // 默认选中第一个 }) } } const checkValue = (data) => { if (props.value) { const tempData = data.filter(f => f.buildingId == props.value) const va = (tempData.length > 0) ? props.value : '项目已下线,请重新选择项目' props.onChange(va) } } return ( ) } export default BuildingSelect