【问题标题】:How to call HTML view from XML view in sapui5如何从 sapui5 中的 XML 视图调用 HTML 视图
【发布时间】:2017-08-04 13:22:48
【问题描述】:

我正在设计一个具有 2 个 XML 和 1 个 HTML 视图的 SAP UI5 应用程序。我想通过单击按钮从 XML 视图导航到 HTML 视图。我该如何为此设置路由。

以下代码不起作用:

routing: {
    config: {
        routerClass: "sap.m.routing.Router",
        viewType: "XML",
        viewPath: "executive.WebContent.view",
        controlId: "app",
        controlAggregation: "pages",

    },

    routes: [{
            "pattern": "",
            "name": "View1",
            "viewPath": "executive.WebContent.view",
            "viewType": "XML",
            "target": "View1"
        },
        {
            "pattern": "Login",
            "name": "View2",
            "viewPath": "executive.WebContent.view",
            "viewType": "XML",
            "target": "View2"
        },

        {
            "pattern": "Visitor",
            "name": "View3",

            "viewPath": "executive.WebContent.view",
            "viewType": "HTML",
            "target": "View3"


        }
    ],

    targets: {
        "View1": {
            "viewName": "Main"

        },
        "View2": {
            "viewName": "Login"

        },
        "View3": {
            "viewName": "Visitor"

        }
    }

}

告诉我,解决这个问题。

【问题讨论】:

标签: javascript xml routing sapui5


【解决方案1】:

据我所知,您在路由的配置部分定义了一个全局类型 XML;这将导致您的路线发生冲突。

我试着做你现在想做的事。但是,我找到了另一种解决方案。您可以拥有第三个 XML 视图,并且您可以在 XML 中嵌入您的 HTML 视图。像这样:

<mvc:HTMLView id="nestedViewhtmnl" 
viewName="executive.WebContent.view"
controller="executive.controller.xx" type="HTML"></mvc:HTMLView>

希望对你有帮助 =)

【讨论】:

【解决方案2】:
  1. 自 1.28 起,您添加到 routes 的所有目标参数都已弃用

  2. 根据 API 参考,routes 中的此类参数被忽略:

    如果使用target,则忽略所有不推荐使用的参数。 (Source)

不要routes中使用viewNameviewTypeviewPath等,但将它们移动到targets

{
  "routing": {
    "config": {
      "routerClass": "sap.m.routing.Router",
      "viewPath": "executive.WebContent.view",
      "viewType": "XML",
      "controlId": "app",
      "controlAggregation": "pages",
      "async": true
    },
    "routes": [
      {
        "...": "...",
        "target": "myTarget",
        "viewType": "XML"
      }
    ],
    "targets": {
      "myTarget": {
        "viewName": "NotXML",
        "viewType": "HTML",
        "...": "..."
      }
    }
  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多