Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript react引导表下一个远程筛选_Javascript_Reactjs_Filter_Bootstrap Table_React Bootstrap Table - Fatal编程技术网

Javascript react引导表下一个远程筛选

Javascript react引导表下一个远程筛选,javascript,reactjs,filter,bootstrap-table,react-bootstrap-table,Javascript,Reactjs,Filter,Bootstrap Table,React Bootstrap Table,我尝试实现远程过滤(远程分页和排序已经很好地工作了),但是遇到了一些问题。当我在filter中键入某些内容时:数据筛选在后端进行,并返回为filtered,但如果我尝试单击next page或尝试按列排序,则所有数据加载为not filtering。问题是过滤器不保存在前端,因此在函数handleTableChange(如下)中,单击(新建页面或按列排序)后,过滤器属性始终设置为空 我可能忘记在表定义中设置有关过滤器存储位置的属性了吗 FE部分的过滤处理放在handleTableChange函数

我尝试实现远程过滤(远程分页和排序已经很好地工作了),但是遇到了一些问题。当我在filter中键入某些内容时:数据筛选在后端进行,并返回为filtered,但如果我尝试单击next page或尝试按列排序,则所有数据加载为not filtering。问题是过滤器不保存在前端,因此在函数
handleTableChange
(如下)中,单击(新建页面或按列排序)后,过滤器属性始终设置为空

我可能忘记在表定义中设置有关过滤器存储位置的属性了吗

FE部分的过滤处理放在
handleTableChange
函数(如下)的行
}之后,如果(type==='filter'){

表定义如下所示:

/…一些代码。。。
const RemoteAll=({data,page,sizePerPage,onTableChange,totalSize,columns})=>(
}
/>
);
//…一些代码。。。
//…在渲染方法中:
el.id==选项卡id)!==未定义
? columns.find(el=>el.id==tab.id).items
:列[0]。项
}
/>
//…一些代码。。。
函数
handleTableChange

/…一些代码。。。
handleTableChange=(类型,{page,SizePage,filters,sortField,sortOrder,cellEdit})=>{
const currentIndex=(第1页)*SizePage;
设置超时(()=>{
如果(类型=='pagination'){
这个是.props.getLocations(
页
规模企业,
这个.state.key,
索特菲尔德,
巫师,
sortField?sortField.split('-')。长度>0:false,
this.state.filters?this.state.filters:过滤器);
让结果=this.props.locations.items;
这是我的国家({
第页:第页,
数据:result.slice(currentIndex,currentIndex+SizePage),
totalSize:this.props.locations.count,
大小企业
});
}如果(type=='sort'&&(sortField!==this.state.sortField | | sortOrder!==this.state.sortOrder)&&
!this.props.locations.isFetching){
这个是.props.getLocations(
页
规模企业,
这个.state.key,
索特菲尔德,
巫师,
sortField?sortField.split('-')。长度>0:false,
this.state.filters?this.state.filters:过滤器);
这是我的国家({
索特菲尔德:索特菲尔德,
巫师
});
}else if(类型==='filter'){
让新的过滤器=this.state.filters?this.state.filters:过滤器;
这个是.props.getLocations(
页
规模企业,
这个.state.key,
索特菲尔德,
巫师,
sortField?sortField.split('-')。长度>0:false,
过滤器);
this.setFilter(过滤器)
这是我的国家({
filters:new_filters.length!==filters.length?filters:this.state.filters
})
}       
}, 100);
}
//…一些代码。。。