点击展开时自动收起其它同级目录
onExpand = (a,b) => {if(b.expanded){if(a.length>0){a.splice(0,a.length-1)}this.setState({expandedKeys:a})}else{const key = b.node.props.children.map((obj,index)=>{if(a.indexOf(obj.key)>-1){return obj.key;}return ''}).filter((v,index)=> v!== '');//index 是点击收起节点的下级展开节点const index = a.indexOf(key[0]); //因为展开的时候会收起兄弟节点 所以这里应该只有一个if(index>0){a.splice(0,index + 1); //从0开始 删除到点击的下一级已展开节点}this.setState({expandedKeys:a})}};
