knockout:如何从属性绑定一个类,并添加静态类

时间:2013-06-07 14:11:08

标签: knockout.js

(使用ko 2.2.1)

我有一个集合:

[
    { name: "foo", type: "bar" },
    { name: "zap", type: "fox" }
]

我希望将其绑定到ul / li列表,以便最终结果如下:

<ul>
  <li class="icon bar">foo</li>
  <li class="icon fox">zap</li>
</ul>

我可以绑定一个类,但是从数据中组合一个类,并且添加一个静态类是行不通的。

要清楚,未定义类型集,因此数据中以“type:”形式提供的任何内容都应作为li元素的类添加

1 个答案:

答案 0 :(得分:1)

你没有表明什么不起作用......

但是,你可以在同一个元素上使用textcss binding(只添加和删除它对现有的类没有任何作用的类)。

因此,如果您在data属性中传递数组,则以下绑定会生成您的示例输出:

<ul data-bind="foreach: data">
    <li class="icon" data-bind="text: name, css: type" />
</ul>

演示JSFiddle