- Mastering KnockoutJS
- Timothy Moran
- 196字
- 2021-08-05 17:13:12
Containerless control flow
So far, we have looked at using the control flow bindings (if
, with
, foreach
, and template
) and the standard data-bind
attribute on an HTML element. It is also possible to use control flow bindings without an element by using special comment tags that are parsed by Knockout. This is called containerless control flow.
Adding a <!— ko -->
comment starts a virtual element that ends with a <!-- /ko -->
comment. This virtual element causes a control flow binding to treat all contained elements as children. The following block of code demonstrates how sibling elements can be grouped by a virtual comment container:
<ul> <li>People</li> <li>Locations</li> <!-- ko if: isAdmin --> <li>Users</li> <li>Admin</li> <!-- /ko --> </ul>
List elements only allow specific elements as children. The preceding containerless syntax applies the if
binding to the last two elements in the list, which causes them to add or remove from the DOM based in the isAdmin
property:
<ul> <li>Nav Header</li> <!-- ko foreach: navigationItems --> <li><span data-bind="text: $data"></span></li> <!-- /ko --> </ul>
The preceding containerless syntax allows us to have a foreach
binding to create a list of items while maintaining a header item at the top of the list.
All of the control flow bindings can be used in this way. The preceding two examples can be seen in the cp1-containerless
branch.
- 程序員面試筆試寶典(第3版)
- C語言程序設計基礎與實驗指導
- Getting Started with CreateJS
- Selenium Design Patterns and Best Practices
- Instant QlikView 11 Application Development
- Android Native Development Kit Cookbook
- Spring Boot進階:原理、實戰與面試題分析
- Python Web數據分析可視化:基于Django框架的開發實戰
- HTML5從入門到精通(第4版)
- C語言程序設計
- PHP編程基礎與實踐教程
- R Data Science Essentials
- HTML5+CSS3+jQuery Mobile APP與移動網站設計從入門到精通
- 交互式程序設計(第2版)
- 小學生C++趣味編程從入門到精通