是否有knockout.js和/或CSS的最佳实践,以防止在foreach循环中创建的额外div在浏览器中显示其额外的空格高度?
来源:
<div data-bind="foreach: jobs" >
<div data-bind="if: JobPhase.Id() == 3">
<div data-bind="text: JobPhase.Id"></div>
</div>
</div>
结果:
<div data-bind="if: JobPhase.Id() == 3"></div>
<div data-bind="if: JobPhase.Id() == 3"></div>
<div data-bind="if: JobPhase.Id() == 3"></div>
<div data-bind="if: JobPhase.Id() == 3">
//This one matched so it will display the content.
</div>
前三项不匹配,但我仍然看到它们的空格。有什么想法?
发布于 2012-05-19 20:26:22
在您的解决方案中,div将被呈现,并且将呈现为空,这并不是真正的好做法。您应该使用另一个"if"语句。就像在里。
<div data-bind="foreach: jobs" >
<!-- ko if: Id == 3 -->
<div data-bind="text: Id"></div>
<!-- /ko-->
</div>
因此,只有在需要时才能创建div块,而不是一直在创建它们。
https://stackoverflow.com/questions/10662156
复制相似问题