• antd中踩坑相关记录


    随用随记

    • 1、项目需要,使用antd的tree功能开发过程中,需要对treenode进行编辑,上移,下移等操作。
      其他的功能btn,可以用e.stopPropagation()来阻止冒泡。但是input就不行了
      treenode的select功能开启,点击treenode来切换右侧展示数据,所以没办法关闭
      input虽然可以autofocus,但是如果文字输入缺失等情况,需要用鼠标点击一次,点击的时候也会触发select操作
      • 又不能阻止冒泡,所以,曲线救国。
        antdtreeonSelect事件是支持两个回参keysevent(此event似乎被封装过)
        所以onSelect事件里处理一下
          onSelect = (keys,eve)=>{
                const eleName = eve.nativeEvent.toElement.localName; //localName 就是触发点击的dom元素
                if(eleName  !== 'input'){
                      //非编辑的input时,正常的逻辑
                }else{
                      //什么都不做。或者还原?
                }
          }
    

    项目比较急,暂时只能以此方案解决。

    • 2、Modal不刷新的问题(使用destroyOnClose解决)
      modal是一个checkbox操作,用了forceRender也不能强制刷新,antd版本^3.25.0,antd中用的rc-dialog7.6.1
      查了文档,说是rc-dialog 7.2.1(大概这个数)之后的这个forceRender是可以的,但是我这边没起作用。

      js {ifShow ? <Modal visible={ifShow}></Modal> : null}
      也无果,主要是有时候render刷新问题,Modal的背景出来了,但是modal本身还是display:none;
      最后发现 destroyOnClose可以
         <Modal visible={ifShow} destroyOnClose></Modal>
    
    当你终于脱胎换骨,一定会感谢曾经的孤独。
  • 相关阅读:
    软件工程——小学生的四则运算(java)
    软件工程——小学生的四则运算
    利用python实现微信小项目
    SQLite3数据库
    爬虫———python
    模拟足球训练
    文件的转换
    学习成绩雷达图
    <dvi>
    vue 锚点跳转防止路径变化后,刷新页面报错的问题
  • 原文地址:https://www.cnblogs.com/zdzx939/p/14374771.html
Copyright © 2020-2023  润新知