剑道mvvm:如何定义自定义css绑定

剑道mvvm:如何定义自定义css绑定,mvvm,kendo-ui,custom-binding,Mvvm,Kendo Ui,Custom Binding,是真的吗:(还是我遗漏了什么?) 剑道UI MVVM不支持css绑定 如果是,如何定义自定义css绑定 我找到了一个实现,但我只有缩小的剑道js文件,有人能提供链接下载未压缩的剑道js文件吗 更新 <div data-bind="cssToggle: truthyProperty" data-enabled-css="on-class" data-disabled-css="off-class"></div> <div data-bin

是真的吗:(还是我遗漏了什么?)

  • 剑道UI MVVM不支持css绑定
如果是,如何定义自定义css绑定

我找到了一个实现,但我只有缩小的剑道js文件,有人能提供链接下载未压缩的剑道js文件吗

更新

<div data-bind="cssToggle: truthyProperty" 
     data-enabled-css="on-class" 
     data-disabled-css="off-class"></div>
<div data-bind="cssState: switch"
     data-css-states="stop:red, go:green, slowdown:amber">
临时解决方案:

必须修改kendo.web.js源代码。

kendo UI支持设置任意CSS属性的“样式”绑定。文件可在以下位置获得:

在旁注中,您可以创建自定义活页夹,而无需编辑源代码。以下是如何:


最后,您可以使用绑定来设置
属性:

您正在寻找的CSS绑定不是吗

网站上有几个CSS活页夹

CSS切换

<div data-bind="cssToggle: truthyProperty" 
     data-enabled-css="on-class" 
     data-disabled-css="off-class"></div>
<div data-bind="cssState: switch"
     data-css-states="stop:red, go:green, slowdown:amber">

还有

CSS状态

<div data-bind="cssToggle: truthyProperty" 
     data-enabled-css="on-class" 
     data-disabled-css="off-class"></div>
<div data-bind="cssState: switch"
     data-css-states="stop:red, go:green, slowdown:amber">

我为剑道UI博客编写了一个示例活页夹,我认为您正在寻找:

HTML使用示例:

<div data-bind="class: { selected: isSelected, error: hasError }">

如果
isSelected
是truthy,这将添加“selected”类,如果
hasError
是truthy,则添加“error”类。同样,如果绑定值为falsy,它将删除这些类。

Kendo now(自2015年第2季度起)提供了样式绑定

例如:

<div data-bind="css: { someClass: isSomeClassEnabled }"></div>


我知道如何定义普通的自定义绑定,-如何定义这种自定义绑定?目前你不能。但是您可以使用这里显示的一个:它与knockout不同,但可以完成这项工作。对于attr绑定解决方案,存在一个问题:如果html元素定义了一些内联css类,它们将被覆盖:。您不需要源代码来创建自定义绑定。这个在线演示证明:源代码可以在发行版的src目录中找到(当然不包括在试用版中):对于这个问题的新手,KendoUI现在支持绑定
css:{active:shouldBeActive}
看起来不错,但这些绑定似乎有一个缺点:无法将两个或多个css类绑定到一个div,类似于:
data bind=“css:{answer:answer accepted,answerAccepted:answerAccepted}”
@Dean,csssstate:binder正是这样做的,只要属性有适用的值,那么多的css类。这些不是附带的,是定制的。最酷的是匹配范围,即0-25%-26-50%等。我认为它们是可行的,cssState binder对binder表达式进行文本解析并将其转换为JSON,但没有理由不使用其他解析器,“0..25:低,26..50:低于中间,51..75:高于中间,76-100:高“@Dean与cssState绑定器的唯一区别是值和CSS类名是相反的。答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答:答