You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用oRouter.navTo无响应,Fiori Elements导航异常求助

问题排查与解决方案

核心问题分析

  1. 路由名称不匹配:你在navTo中使用的路由名称SenderDetailAll与manifest.json中定义的路由名称SenderDetailAllObjectPage不一致,这是导航失效的直接原因。
  2. 导航时机过早:在组件init方法中直接调用navTo时,Router可能尚未完成初始化绑定,导致导航指令无法被正确执行。
  3. 参数格式错误:你传递的key参数是带括号的"(1)",但路由规则会自动处理URL中的括号格式,只需传递原始键值"1"即可。

修正后的代码

component.js

sap.ui.define(["sap/fe/core/AppComponent"], function (Component) {
  "use strict";

  return Component.extend("io.acme.sadsenderdetail.Component", {
    metadata: {
      manifest: "json",
    },
    init: function () {
      Component.prototype.init.apply(this, arguments);
      const oRouter = this.getRouter();
      // 等待Router初始化完成后执行导航
      oRouter.attachEventOnce("initialized", function() {
        oRouter.navTo("SenderDetailAllObjectPage", { key: "1" });
      });
    },
  });
});

额外验证点

  • 确认manifest.json中的路由name与navTo调用的名称完全一致,包括大小写。
  • 如果你的实体键是复合键,需要按照路由规则传递对应的参数(例如key: "('val1','val2')"),但单键场景下直接传递原始值即可。
  • 测试导航时,可以打开浏览器开发者工具的网络面板,检查是否有相关路由请求的错误信息,帮助进一步定位问题。

内容的提问来源于stack exchange,提问作者softshipper

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 03:35:13