我正在使用kendo树视图控件(mvvm版本)。这些项绑定到使用视图模型功能的模板。
<div id="myTreeView"
data-role="treeview"
data-bind="source: MySource"
data-template="treeview-template">
</div>
<script id="treeview-template" type="text/x-kendo-template">
<span data-bind="events: { click: MyClickEvent }, css: { active: MyCssFunction(#=item.Id#) }">#: item.Name #</span>
</script>
viewModel.MyCssFunction = function(e) {...};
viewModel.MyClickEvent= function(e) {...};
执行click事件,但css函数在模型绑定期间抛出错误:未捕获类型错误:d.MyCssFunction不是函数。如果我用简单的模型属性替换函数(一个布尔),一切正常。有人可以帮忙吗?
答案 0 :(得分:0)
这似乎不可能,但您可以在条件表达式中引用该函数(请注意,此处必须添加 viewModel ):
# if(viewModel.MyCssFunction(item.Id)) { #
<span class="active" data-bind="events: { click: MyClickEvent }">#: item.Name #</span>
# } else { #
<span data-bind="events: { click: MyClickEvent }">#: item.Name #</span>
# } #