Routing 匹配的路由模式未从多个路由调用
我试图从多个源代码视图调用视图(SR_CreateRequestDetail.View)。在Route Pattern Matched事件中,我必须检查参数nameRouting 匹配的路由模式未从多个路由调用,routing,sapui5,Routing,Sapui5,我试图从多个源代码视图调用视图(SR_CreateRequestDetail.View)。在Route Pattern Matched事件中,我必须检查参数nameoEvent.getParameter(“name”),以确定从哪个视图调用它 它仅适用于SR_CreateRequestDetailroute。如果我使用不同的路由来定位此视图,则当控件从源移动到目标时,不会调用目标模式匹配 我还尝试在没有任何路由的情况下调用onInitgetRoute,并在\u onRoutePattern中检查
oEvent.getParameter(“name”)
,以确定从哪个视图调用它
它仅适用于SR_CreateRequestDetail
route。如果我使用不同的路由来定位此视图,则当控件从源移动到目标时,不会调用目标模式匹配
我还尝试在没有任何路由的情况下调用onInitgetRoute
,并在\u onRoutePattern中检查是否匹配。但是这种通用的调用不起作用
源控制器:
onAddBusinessCase: function (oEvent) {
this.oRouter.navTo("SR_CreateRequestDetail", {
header: JSON.stringify(Header)
});
onInit: function () {
// this.oRouter = sap.ui.core.UIComponent.getRouterFor(this);
this.oRouter = this.getOwnerComponent().getRouter();
this.oRouter.getRoute("SR_CreateRequestDetail").attachPatternMatched(this._onRoutePatternMatched, this);
},
_onRoutePatternMatched: function (oEvent) {
if (oEvent.getParameter("name") !== "SR_CreateRequestDetail") {
return;
}
目标控制器:
onAddBusinessCase: function (oEvent) {
this.oRouter.navTo("SR_CreateRequestDetail", {
header: JSON.stringify(Header)
});
onInit: function () {
// this.oRouter = sap.ui.core.UIComponent.getRouterFor(this);
this.oRouter = this.getOwnerComponent().getRouter();
this.oRouter.getRoute("SR_CreateRequestDetail").attachPatternMatched(this._onRoutePatternMatched, this);
},
_onRoutePatternMatched: function (oEvent) {
if (oEvent.getParameter("name") !== "SR_CreateRequestDetail") {
return;
}
Manifest.json
"routes": [
{
"pattern": "",
"name": "appHome",
"target": "Main"
},
{
"name": "SR_CreateRequestDetail",
"pattern": "SR_CreateRequestDetail/{header}",
"target": [
"SR_CreateRequestDetail"
]
},
"targets": {
"Main": {
"viewType": "XML",
"transition": "slide",
"viewPath": "nov.sr.reduction.view",
"viewId": "idMainPage",
"viewName": "Main"
},
"SR_CreateRequestDetail": {
"viewType": "XML",
"viewName": "SR_CreateRequestDetail"
},
此外,我得到以下导航错误尽快调用任何导航
Uncaught (in promise) TypeError: I.fFunction.call is not a function
at d.a.fireEvent (sap-ui-core.js:449)
at d.fireRoutePatternMatched (Router.js:6)
at d.fireRoutePatternMatched (Router.js:6)
at constructor.eval (Route.js:6)
My Component.js有以下代码来初始化我的路由器
this.getRouter().initialize();
I.fFunction.call不是函数
通常意味着回调函数不存在。您的代码中是否存在路由模式匹配的?你在其他地方有更多的回电吗?我在帖子中添加了更多细节。是的,它有来自不同观点的其他回调。在这个@Marc上运气好吗?不,但我不知道你的源代码,所以我帮不了你。您的事件处理程序之一不存在。这就是我所能猜到的。@Marc-你说的是哪个丢失的事件处理程序?