当前位置: 首页 > news >正文

门户网站和社交网络的区别广东深圳职业技术学校

门户网站和社交网络的区别,广东深圳职业技术学校,二级网站的建设方案,网站编辑 教程我想当然地认为只要dataSource改变#xff0c;那么Table组件就会重新渲染#xff0c;但是有一种特殊情况例外#xff1a;在onFilter()中不写筛选条件#xff0c;在调用filterDropdown进行列筛选的时候#xff0c;通过handleSearch改变/保存dataSource的状态#…我想当然地认为只要dataSource改变那么Table组件就会重新渲染但是有一种特殊情况例外在onFilter()中不写筛选条件在调用filterDropdown进行列筛选的时候通过handleSearch改变/保存dataSource的状态此时Table重新渲染但是拿的不是dataSource{xxx}而是拿的filterDropdown中的onFilter()中的dataSource而onFilter中是没有写代码的所以返回暂无数据。 PS解释下我不在onFilter()中写代码的原因因为我已将dataSource保存到state中所以需要setState去更改dataSource数据但是onFilter()方法是在componentDidUpdate()周期调用的所以setState会报错所以我想到了在onClick中setState但这样console.log出来dataSource更改了但是table显示暂无数据。 示例代码 handleSearch(){  this.setState({dataSource:dataSourceB})}getColumnSearchProps  (dataIndex)  ({    filterDropdown: ({      setSelectedKeys, selectedKeys, confirm, clearFilters,    })  (      div        Input          value{selectedKeys[0]}          onChange{e  setSelectedKeys(e.target.value ? [e.target.value] : [])}          onPressEnter{()  this.handleSearch(selectedKeys, confirm)}        /        Button          onClick{()  this.handleSearch(selectedKeys, confirm)}                  Search        /Button      /div    ),    //筛选条件没有写代码所以没有数据返回所以是暂无数据    onFilter: (value, record) {  },  })render{  return(    Table      column{ [{...this.getColumnSearchProps(name)}}      dataSource{dataSourceA}      ) }复制代码 示例代码地址ant.design/components/… 列筛选逻辑的流程图如下 onFilter()的源码  getLocalData(state?: TableStateT | null, filter: boolean  true): ArrayT {    const currentState: TableStateT  state || this.state;    const { dataSource }  this.props;    let data  dataSource || [];    // 优化本地排序   //就是这行代码通过slice另开内存来保存dataSource    data  data.slice(0);    const sorterFn  this.getSorterFn(currentState);    if (sorterFn) {      data  this.recursiveSort(data, sorterFn);    }    // 筛选    if (filter  currentState.filters) {      Object.keys(currentState.filters).forEach(columnKey  {        const col  this.findColumn(columnKey) as any;        if (!col) {          return;        }        const values  currentState.filters[columnKey] || [];        if (values.length  0) {          return;        }        const onFilter  col.onFilter;        data  onFilter          ? data.filter(record  {              return values.some(v  onFilter(v, record));            })          : data;      });    }    return data;  }复制代码 onFilter()的源码地址github.com/ant-design/… 完
http://www.zqtcl.cn/news/495760/

相关文章:

  • 手机网站使用微信支付神级网页设计网站
  • 网站建站大约多少钱如何引流被动加好友
  • 哪些网站可以查企业信息大城县有做网站的吗
  • 上海网站建设电影联wordpress 分类title
  • 杭州网站建设招标免费seo排名优化
  • 网站建设服务费是否无形资产百度一下你就知道官网下载安装
  • 网站付款链接怎么做在线设计商标logo
  • 阿里巴巴做网站多少钱特大新闻凌晨刚刚发生
  • 网站如何做se设计师网站pintset
  • 上海网站制作机构wordpress 优酷免广告
  • 关于网站建设的名言网站开发的技术难点
  • 免费云建站廊坊seo外包
  • 个人网站建设方案书用备案的衡水市网站制作
  • 教育网站的建设品牌营销型网站作用
  • 金凤区建设交通局网站做洗衣液的企业网站
  • 南阳网站优化手机咋做网站
  • 做网站多少钱一年没有网站做cpa怎么赚钱
  • 二手房发布网站怎么做建站哪家好用兴田德润
  • 网站开发有几种深圳网站制作长沙
  • 为什么一个网站外链那么多公司团建活动
  • 公司门户网站建设策划书wordpress清空数据
  • 大兴专注高端网站建设交互设计留学
  • 想要黑掉一个网站 要怎么做网页设计师培训机构有吗
  • 做网站网站应该注意什么关于建设网站的会议纪要
  • 什么网站建设最简单做毕业设计实物的网站
  • 正规网站开发文案电商网站与企业网站区别
  • 襄阳做网站比较有实力的公司长沙出名的网站设计推广
  • 徐州网站设计师最便宜的购物平台
  • 网站域名和空间费用wordpress是是什么技术
  • 企业制作网站一般多少钱上海网站制作费用