Reactjs React.js组件在刷新当前路径时重复渲染Instagram中的相同图像
我需要帮助,了解如何不让我的react.js组件从Instagram重新呈现相同的图像,并将它们添加到视图中的现有图像中 我的react.js组件中有一个容器,它从我的Instagram帐户中获取20张最新图片,并将它们呈现在一个整洁的网格中。该元素是流行框架的包装器,在react.js环境中提供相同的方法和配置 在初始加载时,它获取图像并渲染它们。但是,如果刷新了当前路由(例如,通过按下标题导航中的按钮),它将再次获取所有20个图像并将它们添加到视图中,依此类推 我试图通过在instafeed的“成功”或“之后”方法中设置类似“加载”的状态来处理它,但这显然不起作用,而且是反模式的 我试着用componentDidMount来实现这一点,结果是在初始渲染和20x2图像上同时进行了两次http调用Reactjs React.js组件在刷新当前路径时重复渲染Instagram中的相同图像,reactjs,http,visual-glitch,instafeedjs,Reactjs,Http,Visual Glitch,Instafeedjs,我需要帮助,了解如何不让我的react.js组件从Instagram重新呈现相同的图像,并将它们添加到视图中的现有图像中 我的react.js组件中有一个容器,它从我的Instagram帐户中获取20张最新图片,并将它们呈现在一个整洁的网格中。该元素是流行框架的包装器,在react.js环境中提供相同的方法和配置 在初始加载时,它获取图像并渲染它们。但是,如果刷新了当前路由(例如,通过按下标题导航中的按钮),它将再次获取所有20个图像并将它们添加到视图中,依此类推 我试图通过在instafeed
显然,在这种情况下,设置状态不是正确的策略。我如何防止元素对Instagram进行第n次调用,或者销毁componentWillUpdate()上的元素 这可能是您想要的,但是如果您需要其他组件来重新渲染instafeed,您可能需要将instafeed移动到它自己的有状态组件中,而不像该库在每次渲染时都提供控制和重新绘制。直接使用Instagram的api将更简单
/users/self/media/recent?access_token=access-token&count=20
,并映射结果。您可以在componentDidMount
@RobbieMilejczak中调用api,这太棒了,正是我目前需要的。我想把你的答案标记为已接受,但我没有看到复选框。@RickJolly谢谢你的回答,我也一直在考虑这个问题。现在,我将坚持在shouldComponentUpdate()中返回false,但稍后我可能会进行重构,以便在没有instafeed的情况下获取帖子。这可能是您想要的,但是如果您需要其他组件来重新渲染instafeed,您可能需要将instafeed移动到它自己的有状态组件中,而不像该库在每次渲染时都提供控制和重新绘制。直接使用Instagram的api将更简单/users/self/media/recent?access_token=access-token&count=20
,并映射结果。您可以在componentDidMount
@RobbieMilejczak中调用api,这太棒了,正是我目前需要的。我想把你的答案标记为已接受,但我没有看到复选框。@RickJolly谢谢你的回答,我也一直在考虑这个问题。现在,我将坚持在shouldComponentUpdate()中返回false,但稍后我可能会进行重构,以便在没有instafeed的情况下获取帖子。