Kendo 可见绑定不适用于数据对齐 属性?

Kendo visible binding does not work with data-align property?

我刚刚在 kendo-ui.

中遇到了一些奇怪的数据绑定问题
<div data-role="view" data-title="hi" data-model="viewmodel">  
    <div data-role="header">
        <div data-role="navbar">
            <div data-role="view-title"></div>
            <span data-bind="visible: visible">
                <span data-align="right" data-role="button">edit</span>
            </span>
        </div>
    </div>
</div>  

<script>  
    var viewmodel = kendo.observable({
        visible: true
    });    
    var app = new kendo.mobile.Application();  
</script>

我已经建立了一个 DOJO 示例来说明我遇到的错误。 DOJO EXAMPLE

如您所见,我的 viewmodel 中的 visible 属性 设置为 false。这意味着,根据我设置的绑定,它应该隐藏按钮。但无论我将 visible 标志设置为 true 还是 false,该按钮始终显示。 (更改可见标志后重新运行 片段)

但后来我尝试remove/add 属性来检查'blocks' 可见绑定。我发现 属性 data-align="right" 按钮是 'blocking' 可见绑定。

您可以在这个 example 中看到(我从按钮中删除了 data-align 属性),当您更改 [=14] 中的 visible 标志时=] 到 truefalse 它实际上是 hides/shows 基于 visible 标志的按钮。

有人知道这个错误 and/or 有一个 workaround/solution 吗?

看起来您正在绑定一个 span 元素,其中有一个嵌套的 span,包含一个按钮。

两个 span 都有数据绑定,但您只在按钮上设置对齐方式;这应该像这样设置到外部容器:

<!-- add the data-align on this outer 'container' element -->
<span data-align="right" data-bind="visible: visible">
    <!-- ... and not on the element below here... -->
    <button data-role="button">edit</button>
</span>

我还克隆并更新了 your dojo example here