【问题标题】:Populate bootstrap table in meteor with dynamic data using {{#each}} OR create dynamic column width in bootstrap grids使用 {{#each}} 使用动态数据填充流星中的引导表或在引导网格中创建动态列宽
【发布时间】:2015-10-11 12:35:34
【问题描述】:

我的问题是this 问题和this 未回答部分的组合。我正在使用 Meteor 并尝试制作一个填充了来自 MongoDB 的动态数据的表或网格,但是我很难找到一种方法来完成我想要的一切。我目前有一个网格,它使用 {{#each}} 标签从 mongo 获取数据,基于 Jim Mack 对第一个链接中问题的回答。这是一些示例代码:

<template name="projectList">
    {{#each projects}}
        {{> projectRow }}
    {{/each}}
</template>

<template name='projectRow'>
    <div class='row span12'>
    <div class="projectRow">
        {{#each row }}
            {{> projectItem}}
        {{/each}}
    </div>
    </div>
</template>

<template name="projectItem">
    <div class="span6 projectItem nameitem"> {{name}}</div>
    <div class="span6 projectItem numberitem">{{number}}</div>
</template>

这很好用并且可以获取所有数据,但是正如第二个链接中所讨论的,列必须是固定宽度,因为根据引导网格文档,动态宽度不是一个选项。如果我使用标签,{{#each}} 将不再起作用,并且我无法弄清楚如何将我的数据放入表中。

有没有人可以从 mongoDB 获取动态数据以填充 Meteor 中的表或其他方式来实现动态宽度列和动态 MongoDB 数据?

【问题讨论】:

    标签: html mongodb twitter-bootstrap meteor


    【解决方案1】:

    如果您想要动态宽度,请不要使用引导类,请使用 flexbox。摆脱引导行,改为使用display = flex 的 div。默认情况下,弯曲方向将设置为行,因此您将完全实现您想要的。然后所有子 div 都将是弹性子元素,因此它们将拥有所需的空间,除非您在它们上设置 flex

    【讨论】:

    • 很有趣,谢谢。我以前没听说过 flex.. 你是在谈论 CSS flexbox 吗? Meteor 不允许我将“display = flex”放入 div。
    • 是的,flexbox 是 css。
    • 啊,好吧。我在 .projectRow 的 CSS 中添加了“display: flex”,并且做到了。你知道 flex 是否可以做到,所以有一个统一的列,它是最宽元素的宽度? (如果这应该作为一个新问题发布,请原谅我——我对 SO 不是“新手”,所以我知道有严格的做事方式,但我没有经常使用它,所以我并不总是知道什么他们是)
    • 你可以考虑使用一张桌子,这正是你想要的。或者,如果你坚持使用 flexbox,你会想要创建项目列,而不是项目行并使用 flex-direction: column。
    • 好的,我试试。非常感谢您的帮助
    猜你喜欢
    • 2020-09-16
    • 2018-07-03
    • 2013-09-21
    • 1970-01-01
    • 2013-08-29
    • 1970-01-01
    • 2018-06-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多