首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用React JS无限滚动

使用React JS无限滚动
EN

Stack Overflow用户
提问于 2014-01-21 00:04:51
回答 2查看 89.5K关注 0票数 95

我正在寻找用React实现无限滚动的方法。我遇到过react-infinite-scroll,发现它的效率很低,因为它只是向DOM添加节点,而不是删除它们。有没有经过验证的React解决方案,可以在DOM中添加、删除和维护固定数量的节点。

这就是jsfiddle问题。在这个问题中,我希望在DOM中一次只有50个元素。当用户向上和向下滚动时,应加载和删除其他内容。我们已经开始使用React,因为它的优化算法。现在我找不到解决这个问题的办法。我遇到了airbnb infinite js。但它是用Jquery实现的。要使用这个airbnb无限滚动,我必须松开我不想做的React优化。

示例代码我想添加滚动是(在这里我加载所有的项目。我的目标是一次只加载50个项目)

代码语言:javascript
复制
/** @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'));

寻找帮助...

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21238667

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档