SAP Fiori Elements List Report Smart Table Toolbar 的 XML 视图实现

http://localhost:8080/resourc...ui

SmartTableToolbar.fragment.xml 里,包含了 BreakoutActions.fragment:spa

http://localhost:8080/resourc...code

源代码:orm

<core:FragmentDefinition xmlns:template="http://schemas.sap.com/sapui5/extension/sap.ui.core.template/1"
                         xmlns="sap.m" xmlns:core="sap.ui.core" xmlns:build="sap.build">

    <template:if test="{= ${tmpEntitySet>EntitySet} === ${parameter>/entitySet} }">
        <template:repeat list="{tmpEntitySet>Actions}" var="customaction">
            <!--all break out actions which are neither determining nor global-->
            <template:if test="{= !${customaction>determining} &amp;&amp; !${customaction>global}}">
                <Button id="{parts: [{path: 'customaction>'}, {path: 'tabItem>'}], formatter: 'sap.suite.ui.generic.template.js.AnnotationHelper.getBreakoutActionButtonId'}"
                        enabled="{parts: [{path: 'customaction>'}, {path: 'tabItem>'}], formatter: 'sap.suite.ui.generic.template.js.AnnotationHelper.getBreakoutActionEnabledKey'}"
                        text="{customaction>text}"
                        press="{customaction>press}" type="Transparent">
                    <layoutData>
                        <OverflowToolbarLayoutData priority = "{customaction>importance}"/>
                    </layoutData>
                </Button>
            </template:if>
        </template:repeat>
    </template:if>
</core:FragmentDefinition>

运行时,该 XML 视图源代码被 XMLPreprocessor.js 解析:xml

SmartTableToolbar.fragment.xml 里包含了 BreakoutActions.fragment.xml:rem

getBreakoutActionButtonId:get

更多Jerry的原创文章,尽在:"汪子熙":
it