Mein Plan ist, Daten zu laden, wenn Sie die unten auf der Seite bewegen und erreichen. Ich benutze JQuery Scroll, um es möglich zu machen, und es funktioniert gut, wenn keine Daten angezeigt werden (nur die Daten der Konsole protokollieren). Aber wenn ich anfange, Daten anzuzeigen, blitzt der Scroll zweimal oder etwas anderes zweimal, was ich nicht weiß, was. Hier ist mein Code:JQuery scroll Feuer zweimal beim Laden reagiert js Komponentendaten
import React from 'react';
class UsersBrowse extends React.Component {
render() {
let x = this.props;
$(window).unbind('scroll').scroll(function() {
if($(window).scrollTop() + $(window).height() == $(document).height()) {
const {loadMore, currentPage} = x;
loadMore(currentPage);
}
});
const {scanUserResult, loading} = this.props;
console.log(this.props);
return (
<div>
{scanUserResult ? scanUserResult.map(users => (
<div key={users._id}>
<div>{users._id}</div>
</div>
)):<img src={loading} height="100" width="100" />}
</div>
);
}
}
export default UsersBrowse;
Der Code funktioniert gut, wenn ich nur die Daten-Konsole anmelden, aber wenn ich es auf der Seite angezeigt werden überspringt es wie:
Lasten Seite 1 Seite 2 Lasten überspringen Seite 3 Seite 4 lädt Seite 5 überspringen
Meine Erwartung ist, sollte es laden:
page1 page2 pa ge3 page4
Es funktioniert, wenn ich es wie folgt tun:
import React from 'react';
class UsersBrowse extends React.Component {
render() {
const {scanUserResult, loading} = this.props;
let x = this.props;
$(window).unbind('scroll').scroll(function() {
if($(window).scrollTop() + $(window).height() == $(document).height()) {
const {loadMore} = x;
loadMore();
}
});
console.log(this.props);
return (
<div>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
test<br/>
</div>
// <div>
// {scanUserResult ? scanUserResult.map(users => (
// <div key={users._id}>
// <div>{users._id}</div>
// </div>
// )):<img src={loading} height="100" width="100" />}
// </div>
);
}
}
export default UsersBrowse;
Jede Idee? Danke
es das Problem scheint in der Rückkehr ist(); hhhmmmm ...... –