点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)以下帖子中的可能是我的问题的答案...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)以下帖子中的可能是我的问题的答案...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
可能是我的问题的答案,但我没有看到它:使用通用ErrorHandler.js粘贴,同时允许每个请求进行自定义错误消息处理,并且没有双消息框
我正在扩展Fiori标准应用程序(具体来说是MyProfile),一切正常。 现在,客户希望根据网关发送的技术消息来显示特殊的错误消息。 因此,我尝试在 Component.js 中扩展ErrorHandler:
jQuery.sap.declare(" com.company.hcm.fab.myprofile.ext.Component"); jQuery.sap.require(" com.company.hcm.fab.myprofile.ext.controller.ErrorHandler"); sap.ui.component.load({ 名称:" hcm.fab.myprofile", url:"/img/sap/bc/ui5_ui5/sap/hcmfab_prfl_mon"}); this.hcm.fab.myprofile.Component.extend(" com.company.hcm.fab.myprofile.ext.Component",{ 元数据:{ manifest:" json"
}, init:function(){ hcm.fab.myprofile.Component.prototype.init.apply(this,arguments);
this._oErrorHandler = new com.company.hcm.fab.myprofile.ext.controller.ErrorHandler(this);
}
});
然后按照显示的帖子中的理解方式扩展了 ErrorHandler.js :
sap.ui.define([
" hcm/fab/myprofile/controller/ErrorHandler",
" sap/m/MessageBox"
],函数(ErrorHandler,MessageBox){
"使用严格";
返回ErrorHandler.extend(" com.company.hcm.fab.myprofile.ext.controller.ErrorHandler",{
构造函数:function(oComponent){
this。 _oResourceBundle = oComponent.getModel(" i18n")。getResourceBundle();
this._oComponent = oComponent;
this._oModel = oComponent.getModel();
this._sErrorText = this._oResourceBundle.getText( " errorTitle");
this._oModel.attachRequestFailed(this._requestFailedHandler,this);
}, _requestFailedHandler:函数(oEvent){
var oParameters = oEvent.getParameters(); console.log(" now?",oResponse);
this._showServiceError(oParameters.response);
}
});
});
无论如何,我不仅会看到我的消息,而且仍然会看到来自标准应用程序中的ErrorHandler的消息。 有人有主意吗?
阐明我的想法:在我正在扩展的原始应用程序中,ErrorHandler在init-Method中初始化。 因此,如果我做对了,我必须完全重写/覆盖init-Method,或者找到一种方法来分离原始事件,然后可以扩展或重写ErrorHandler。 我更喜欢后面的选项,因为我不仅必须在此标准fiori应用程序中扩展ErrorHandler,而且还要扩展其他六个应用程序。 与总是重写ErrorHandler相比,总是重写init-method感觉更糟。
最诚挚的问候
Marco
抱歉,代码格式都正确,但是我似乎无法正确显示它...
一周热门 更多>