React创建未知大小的Bootstrap网格

时间:2015-12-08 15:32:59

标签: javascript twitter-bootstrap reactjs

我正在构建一个应用程序,我需要使用React来渲染Bootstrap网格。我是React newb所以请耐心等待。

前端将收到需要在Boostrap列中显示的N个对象,每个对象都在他自己的列中。问题是,我不知道N有多大,所以我不知道需要多少行。

任何想法如何解决这个问题?

我应该只有一个组件吗?或者三个(容器,行,列)?或其他什么?

2 个答案:

答案 0 :(得分:3)

首先,考虑一下您是否需要Container,Row和Column的自定义组件。你可以使用具有适当的css类的div,但是我没有看到将它包装到自定义组件中的重要价值。如果您决定使用自定义组件,您可能需要查看react-bootstrap,他们已经实现了这些。

至于布局,我相信你可以在Bootstrap布局中连续放置任意数量的列,并且它们将根据需要进行包装(如果超过12个),所以它可能是最简单的有一行并将所有列放在其中(参见Bootstrap docs)。

答案 1 :(得分:0)

根据您尝试插入网格的内容类型,有多种方法可以解决此问题。

首先,就列而言,Bootstrap使用12列网格系统。这将使您的生活更轻松,因为您可以将12除以每行中的元素数量。如果你的html设置正确,你可以使用:

var numOfElements = document.getElementById('objectsWrapper').children.length;

如果你正在使用图片,你可能需要设置严格的最大高度最大宽度(百分比)来限制生成的图像搞乱网格。

接下来,当列超过12个元素时,如果需要,您将要开始新的 .row 。创建一个新div,将其附加到当前容器并将其设置为您要将孩子添加到的currentDiv。此步骤非常重要,因为您的代码需要知道哪些对象包装'它要求孩子们。

洗涤。冲洗。重复。

希望这会有所帮助。