Я рассматриваю способы реализации бесконечной прокрутки с помощью React. Я столкнулся с react-infinite-scroll и нашел его неэффективным, поскольку он просто добавляет узлы в DOM и не удаляет их. Есть ли проверенное решение с React, которое будет добавлять, удалять и поддерживать постоянное количество узлов в DOM.
Вот проблема jsfiddle. В этой проблеме я хочу иметь только 50 элементов в DOM за раз. другие должны быть загружены и удалены, когда пользователь прокручивает вверх и вниз. Мы начали использовать React из-за его алгоритмов оптимизации. Теперь я не мог найти решение этой проблемы. Я столкнулся с airbnb infin js. Но он реализован с помощью JQuery. Чтобы использовать эту бесконечную прокрутку airbnb, я должен потерять оптимизацию React, которую я не хочу делать.
Пример кода Я хочу добавить прокрутку (здесь я загружаю все элементы. Моя цель - загрузить только 50 элементов за раз)
/** @jsx React.DOM */
var Hello = React.createClass({
render: function() {
return (<li>Hello {this.props.name}</li>);
}
});
var HelloList = React.createClass({
getInitialState: function() {
var numbers = [];
for(var i=1;i<10000;i++){
numbers.push(i);
}
return {data:numbers};
},
render: function(){
var response = this.state.data.map(function(contact){
return (<Hello name="World"></Hello>);
});
return (<ul>{response}</ul>)
}
});
React.renderComponent(<HelloList/>, document.getElementById('content'));
Поиск помощи...