手动重新加载react-masonry-component

时间:2015-12-22 08:13:35

标签: javascript reactjs masonry react-masonry

使用React Masonry插件进行卡片对齐https://github.com/eiriklv/react-masonry-component

问题是我在卡片中有可扩展的组件,这增加了卡片的高度,并且砌体布局变形。插件重新排列,如果数据的状态是更新或它在滚动上工作。任何想法如何在可扩展内容上手动重新加载布局。检查了插件的问题,但没有找到合适的解决方案。针对此场景的任何其他反应包装pf砌体或插件建议?提前感谢您的帮助

我知道使用jQuery我可以使用reloadItemslayout方法,但我试图避免使用jquery

2 个答案:

答案 0 :(得分:-1)

我遇到了一个类似的问题,我希望在每次切换显示/隐藏div后再进行remasonrize(如果你愿意)。
在我的例子中,我将组件A作为父组件(带有<Masonry>组件) 和其中的组件B1,B2 ...... Bn。

每当我切换(在你的情况下调整大小)B1,B2 ... Bn时,它会更新A的状态,从而导致砌体组件再次渲染。

如果您发布代码示例,那么我可以帮助您使用确切的代码。

答案 1 :(得分:-1)

您可以根据文档中的说明访问砌体组件: https://github.com/eiriklv/react-masonry-component#accessing-masonry-instance 并直接在实例上执行手动布局。

然而,似乎更新应该自动响应,因为您可能会更改组件的状态以在展开模式下呈现它。 因此,您可能想要了解为什么更新不适用于您的情况。