无法在页面中添加页脚。未捕获的TypeError

时间:2018-06-14 17:58:14

标签: sapui5

我正在尝试在页面中添加页脚,我遇到了一些问题:

  

未捕获的TypeError:b.applyTagAndContextClassFor不是函数

这就是我的观点。

App.view.xml

<mvc:View
  controllerName="com.xyz.controller.App"
  xmlns="sap.m"
  xmlns:mvc="sap.ui.core.mvc"
  displayBlock="true"
>
  <App class="myCustomStyle">
    <Page title="{i18n>pageTitle}">
      <mvc:XMLView viewName="com.xyz.view.FirstPanel"/>
      <footer>
        <mvc:XMLView viewName="com.xyz.view.Footer"/>
      </footer>
    </Page>
  </App>
</mvc:View>

Footer.view.xml

<mvc:View
  controllerName="com.xyz.controller.Footer"
  xmlns="sap.m"
  xmlns:mvc="sap.ui.core.mvc"
>
  <Toolbar>
    <ToolbarSpacer/>
    <Button type="Accept" text="Accept"/>
    <Button type="Reject" text="Reject"/>
  </Toolbar>
</mvc:View>

如果我编辑App.view.xml看起来像这样:

<!-- ... -->
  <mvc:XMLView viewName="com.xyz.view.FirstPanel"/>
  <footer>
    <Toolbar>
      <ToolbarSpacer/>
      <Button type="Accept" text="Accept"/>
      <Button type="Reject" text="Reject"/>
    </Toolbar>
  </footer>
<!-- ... -->

一切都按预期工作?

1 个答案:

答案 0 :(得分:2)

从XMLView更改为像@ I.B.N这样的片段。建议最终解决问题。

@Marc解释说,&#34;页脚视图的最外层元素是sap.ui.core.mvc.View。聚合页脚仅允许sap.m.IBar。更改为片段可修复错误。&#34;

更正:

<强> App.view.xml

<!-- ... -->
<footer>
    <core:Fragment fragmentName="com.xyz.view.Footer" type="XML"/>
</footer>
<!-- ... -->

<强> Footer.fragment.xml

<core:FragmentDefinition
    xmlns="sap.m"
    xmlns:core="sap.ui.core" 
>
    <Toolbar>
        <ToolbarSpacer/>
        <Button type="Accept" text="Accept"/>
        <Button type="Reject" text="Reject"/>
    </Toolbar>
</core:FragmentDefinition>