LevelTree组件
interface IProps {
dataSource: Array<any>,
handleSelected?: any
}
export default (props: IProps) => {
const { dataSource = [], handleSelected = () => {} } = props;
const [ selectedKeys, setSelectedKeys] = useState([]);
const [ expandedKeys, setExpandedKeys] = useState([]);
const [treeList, setTreeList ] = useState([])
useEffect(() => {
const treeList = getTreeList(dataSource);
setTreeList(treeList);
const filterSelected = treeList.filter((el: any) => el.isClick)[0];
const filterExpand = treeList.filter((el: any) => !el.isClick)[0];
if (filterSelected && treeList.length > 0) {
setSelectedKeys([filterSelected.key]);
setExpandedKeys([filterExpand.key]);
handleSelected(filterSelected)
}
}, [dataSource])
const getTreeList = (data: any) => {
const treeList:Array<any> = [];
const get