Data binding 如何使用if=";“某些条件”;in-ZK模板标记

Data binding 如何使用if=";“某些条件”;in-ZK模板标记,data-binding,mvvm,zk,Data Binding,Mvvm,Zk,我的ZUL文件中有一个标记,我希望在出现某些情况时(例如,当某个标签的值更改为某个文本时)使用此模板 请看下面的代码。。。正如您所看到的,“templateStatus”是我标签的名称,但它不起作用 如何解决此问题 <template name="allTaskTemplate" var="allTask" if="templateStatus.value == 'allTask'"> <row> <label val

我的ZUL文件中有一个标记,我希望在出现某些情况时(例如,当某个标签的值更改为某个文本时)使用此模板

请看下面的代码。。。正如您所看到的,“templateStatus”是我标签的名称,但它不起作用

如何解决此问题

    <template name="allTaskTemplate" var="allTask" if="templateStatus.value == 'allTask'">
        <row>
            <label value="" />
            <label value="@load(allTask.documentDTO.docTypeDTO.title)"/>
            <label value="@load(allTask.documentDTO.docNumber)"/>
            <label value="@load(allTask.documentDTO.docDateTime)"/>
            <label value="@load(allTask.assignerID)"/>
            <label value="@load(allTask.assigneeID)"/>
            <label value="@load(allTask.assignDateTime)"/>
            <label value="@load(allTask.assignDateTime)"/>
            <label value="@load(allTask.assignDateTime)"/>
            <label value="@load(allTask.assignDateTime)"/>
            <label value="@load(allTask.documentDTO.docTypeStateDTO.stateActionDTO.actionDTO.title)"/>
            <label value="@load(allTask.catalogDTO.catalogTypeDTO.title)"/>
        </row>
    </template>
</grid>

参见下面的ZK示例。您可以使用条件模板

<grid model="@bind(vm.itemList) @template(vm.type eq 'foo'?'template1':'template2')">
    <template name="template1">
    <!-- child components -->
    </template>

    <template name="template2">
    <!-- child components -->
    </template>
</grid>

有关更多信息,请参见ZK的官方页面

请输入以下代码

   <menubar id="mbar" children="@bind(vm.menuList) @template(empty each.children?'menuitem':'menu')">
    <template name="menu" var="menu">
        <menu label="@bind(menu.name)">
            <menupopup children="@bind(menu.children) @template(empty each.children?'menuitem':'menu')"/>
        </menu>
    </template>
    <template name="menuitem" var="item">
        <menuitem label="@bind(item.name)" onClick="@command('menuClicked',node=item)" />
    </template>
</menubar>

见上文。使用两个以上的模板,您可以执行类似的操作。我不知道您的需求,但您可以使用上述逻辑并在代码中实现它


或者你也可以在ZK论坛上看到同样的内容,使用
if
语句:

<zk if="${vm.type=='foo'}">
    <!-- Child components -->
</zk>

<zk if="${vm.type=='check'}">
    <!-- Child components -->
</zk>

<zk if="${vm.type=='something'}">
    <!-- Child components -->
</zk>

<zk if="${vm.type=='value'}">
    <!-- Child components -->
</zk>

谢谢亲爱的subodh,但我有4个模板。你对我的情况有什么建议吗?