1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-10 03:11:07 +00:00

Use state change directory array

This commit is contained in:
zxj96
2019-04-23 14:43:47 +08:00
parent 002c3a0dcc
commit 624871fc9c
7 changed files with 50 additions and 33 deletions

View File

@@ -45,6 +45,8 @@ const propTypes = {
onItemsCopy: PropTypes.func.isRequired,
onItemsDelete: PropTypes.func.isRequired,
onFileTagChanged: PropTypes.func,
scrollPage: PropTypes.func.isRequired,
isCurrentPage: PropTypes.bool.isRequired,
};
class DirentListView extends React.Component {
@@ -65,7 +67,6 @@ class DirentListView extends React.Component {
progress: 0,
isMutipleOperation: true,
activeDirent: null,
direntItemsList: [],
itemIdex: 100,
};
@@ -89,11 +90,9 @@ class DirentListView extends React.Component {
}
componentWillReceiveProps(nextProps) {
let direntItemsList = nextProps.direntList.filter((item, index) => {
return index < 100
})
this.setState({direntItemsList: direntItemsList, itemIdex: 100,})
if (this.props.isCurrentPage) {
this.setState({itemIdex: 100})
}
}
componentWillUnmount() {
@@ -543,27 +542,20 @@ class DirentListView extends React.Component {
let target = e.target;
let itemIdex = this.state.itemIdex;
const { direntList } = this.props;
if (target.scrollTop + document.documentElement.clientHeight - target.offsetTop >= target.scrollHeight) {
itemIdex += 100;
let direntItemsList = direntList.filter((item, index) => {
return index < itemIdex
})
this.setState({direntItemsList: direntItemsList, itemIdex: itemIdex})
itemIdex += 100
this.setState({itemIdex: itemIdex})
}
this.props.scrollPage();
}
render() {
const { direntList, sortBy, sortOrder } = this.props;
let direntItemsList = direntList.filter((item, index) => {
return index < 100
return index < this.state.itemIdex;
})
direntItemsList = this.state.direntItemsList.length === 0 ? direntItemsList : this.state.direntItemsList
if (this.props.isDirentListLoading) {
return (<Loading />);
}