1.在项目中用 antd的tree组件的时候,遇到两个问题

1.文件名太长的话 会超出容器 很难看,解决方法如下

` 引入css在global下设置

:global {

.ant-tree li .ant-tree-node-content-wrapper{

height:auto;

}

.ant-tree-node-content-wrapper{

white-space: normal;

max-width: 100%;

}

}

`

2.节点都展开的话 会太高了。也会撑开盒子,影响美观。

解决方法: 一方面 展开一个的时候 ,可以收起同级别其他已经展开的。代码如下,在tree的api里 展开回调设置,同时 要tree组件绑定 state的展开节点数组。

onExpand = (a,b) => { if(b.expanded){ if(a.length>0){ a.splice(0,a.length-1) } } this.setState({ expandedKeys:a }) };

上边的代码有一个问题 ,就是不能 跨级 收起。改后的代码如下

   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
})
} };

另一方面就是 展示部分 显示 查看更多... 这个我看看怎么弄。

最新文章

  1. ios视图frame和bounds的对比
  2. 【转】Oracle AWR 配置查看
  3. 在设置代理的环境下使用SharePoint CSOM
  4. 编写Java应用程序。首先,定义一个时钟类——Clock,它包括三个int型 成员变量分别表示时、分、秒,一个构造方法用于对三个成员变量(时、分、秒) 进行初始化,还有一个成员方法show()用于显示时钟对象的时间。其次,再定义 一个主类——TestClass,在主类的main方法中创建多个时钟类的对象,使用这 些对象调用方法show()来显示时钟的时间。
  5. 转:NLog 自定义日志内容,写日志到数据库;修改Nlog.config不起作用的原因
  6. BZOJ3172 后缀数组
  7. Anychart 破解备注
  8. MySQL定时事件
  9. 读取sd卡下图片,由图片路径转换为bitmap
  10. Redis学习-持久化
  11. 【翻译】Siesta事件记录器入门
  12. 从javascript发展说到vue
  13. GUI学习之九——QLineEdit的学习总结
  14. [原创]CobaltStrike & Metasploit Shellcode一键免杀工具
  15. Spring JDBCTemplate连接SQL Server之初体验
  16. Spark partitionBy
  17. shell编程:if语句
  18. AS不能真机调试 (转)
  19. tornado入门1
  20. e.getMessage() e.printStackTrace() 和e.printStackTrace() 小结

热门文章

  1. ----一个roadmap----
  2. Office365 Manager Plus之报表
  3. P3379 【模板】最近公共祖先(LCA)(树链剖分)版
  4. java安装jdk错误1316 指定的账户已存在
  5. C++中的return和exit区别
  6. 通过MFC设计一个简单的计价程序
  7. 冲刺博客NO.10
  8. Akka-Cluster(0)- 分布式应用开发的一些想法
  9. ios webview下footer部分fixed失效问题
  10. Swift5 语言指南(十二) 属性