0

使用 SAP Web IDE,我从 Master/Detail 模板创建了一个新应用程序。该应用程序使用最初创建的视图。现在我正在尝试添加另一个名为“FileDetail”的视图以加载到详细信息窗口中。我已将视图添加到路线:

routing: {
    config: {
        routerClass: FileUtility.MyRouter,
        viewType: "XML",
        viewPath: "FileUtility.view",
        targetAggregation: "detailPages",
        clearTarget: false
    },
    routes: [
        {
            pattern: "",
            name: "main",
            view: "Master",
            targetAggregation: "masterPages",
            targetControl: "idAppControl",
            subroutes: [
                {
                    pattern: "{file}",
                    name: "fileDetail",
                    view: "FileDetail"
                },
                {
                    pattern: "{entity}/:tab:",
                    name: "detail",
                    view: "Detail",
                    subroutes: [

                    ]
                }

            ]
        },
        {
            name: "catchallMaster",
            view: "Master",
            targetAggregation: "masterPages",
            targetControl: "idAppControl",
            subroutes: [
                {
                    pattern: ":all*:",
                    name: "catchallDetail",
                    view: "NotFound",
                    transition: "show"
                }
            ]
        }
    ]
}

(我知道这是不对的,但我只是想强制它加载页面)当我使用函数时

onFileSelect: function(oEvent) {
    this.getRouter().navTo("fileDetail", {
        from : "detail",
        file: oEvent.getSource().getBindingContext().getPath().slice(1)
    }, true);
},

被调用我在 JS 控制台中得到一个错误

Uncaught Error: failed to load 'view/FileDetail.controller.js' from resources/view/FileDetail.controller.js: 404 - Resource could not be found!

这里是树 树

我添加的唯一文件是 FileDetail.controller.js 和 FileDetail.view.xml,它们是使用新视图向导添加的

谢谢你的帮助!

4

1 回答 1

2

我的问题出在视图的命名空间中。当我创建应用程序时,我输入了一个名称空间,当我创建视图时,我被要求提供视图的名称空间,但没有提供任何名称。

我通过将命名空间添加到 FileDetail.controller.js 来修复它

老的

sap.ui.controller("view.FileDetail", {

新的

sap.ui.controller("FileUtility.view.FileDetail", {

并在 FileDetail.view.xml

老的

<mvc:View
  xmlns:mvc="sap.ui.core.mvc"
  xmlns="sap.m"
  controllerName="view.FileDetail"
>

新的

<mvc:View
  xmlns:mvc="sap.ui.core.mvc"
  xmlns="sap.m"
  controllerName="FileUtility.view.FileDetail"
>
于 2015-09-24T12:24:05.933 回答