如果条件为真,我在 Knockout 中有一个数据绑定来应用 CSS 类。当我在类名(例如 test-class)中使用破折号时,我得到一个 javascript 错误。
这是一个演示问题的小提琴:http: //jsfiddle.net/sgvem/2/
<p data-bind="text: property, css: { with-dash: property().length > 0 }"></p>
有没有办法使用 Knockout JS 添加带有破折号的类?
如果条件为真,我在 Knockout 中有一个数据绑定来应用 CSS 类。当我在类名(例如 test-class)中使用破折号时,我得到一个 javascript 错误。
这是一个演示问题的小提琴:http: //jsfiddle.net/sgvem/2/
<p data-bind="text: property, css: { with-dash: property().length > 0 }"></p>
有没有办法使用 Knockout JS 添加带有破折号的类?
只需将其放在引号中:
<p data-bind="text: property, css: { 'with-dash': property().length > 0 }"></p>
这是一个更新的小提琴。
作为旁注,您不需要> 0
因为 alength
将0
评估为false
,并且任何其他长度将评估为true
:
<p data-bind="text: property, css: { 'with-dash': property().length }"></p>
您可以使用 ' 限定名称
像这样:
<p data-bind="text: property, css: { 'with-dash': property().length > 0 }"></p>
你的小提琴,更新
以下是解释 CSS 绑定的 Knockout 文档:http: //knockoutjs.com/documentation/css-binding.html