我已经创建了一个knockout组件,并尝试在其中将一个span
元素绑定到视图模型中定义的CSS类。我通常使用class
绑定:
<span data-bind="class: IconCssClass"></span>
但由于某种原因,它不起作用--它根本不应用类。
但是,当我使用css
绑定或attr
绑定时,两者都按预期工作:
<span data-bind="attr: { 'class': IconCssClass }"></span>
<span data-bind="css: IconCssClass"></span>
这是一个击倒错误还是我错过了什么?试图谷歌出来,但似乎没有其他人遇到这个问题。
下面是一个代码片段:
第一个
1条答案
按热度按时间oyxsuwqo1#
我找到了理由所以才会回答我自己的问题。
class
结合是敲除中新的,它直到敲除3.5.0-beta才出现。不幸的是,在knockout文档中没有提到这一点,在该文档中,
css
和class
绑定被一起描述,但没有任何信息表明其中一个绑定是非常新的:https://knockoutjs.com/documentation/css-binding.html
您必须查看发行说明以查找此信息:
新的
class
绑定支持动态类字符串。这允许您同时使用css
和class
绑定来支持两种设置CSS类的方法。完全淘汰3.5.0-测试版发行说明:
https://github.com/knockout/knockout/releases/tag/v3.5.0-beta