回调函数无法调用函数

2020-09-16 13:16发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们, 我是sapUI5空间...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家们,

我是sapUI5空间的新手,我想做的是调用" sap.ndc.BarcodeScanner.scan"函数来扫描这样的条形码:

 onPress:function(oEvent){
 sap.ndc.BarcodeScanner.scan(
 函数(mResult){

 this.NavResult(mResult);
 },
 函数(错误){

 },
 函数(mParams){

 }
 );
 },

 NavResult:function(mResult){
 var oRouter = sap.ui.core.UIComponent.getRouterFor(this);
 oRouter.navTo(" ResultView",{barcode:" barcode"});

 }
 

我的要求是,一旦成功读取条形码,便移至下一个视图。 但是上述调用方法" NavResult(mResult)"在回调函数中未被识别,似乎是范围问题。

我收到以下错误:

未捕获的TypeError:this.NavResult不是函数
     at Object.eval [as onSuccess](ScanView.controller.js?eval:50)
     在Object.onOK(BarcodeScanner.js?eval:6)
     在f.a.fireEvent(EventProvider-dbg.js:228)
     在f.a.fireEvent(Element-dbg.js:431)
     在f.firePress(ManagedObjectMetadata-dbg.js:568)
     在f.d.ontap(Button-dbg.js:289)
     在f_a_handleEvent(Element-dbg.js:162)
     在builder.U._handleEvent(UIArea-dbg.js:828)上
     在HTMLDivElement.dispatch(jquery-dbg.js:4737)
     在g(jquery-mobile-custom-dbg.js:1972)
 


如何更改此功能的范围以使其起作用。 非常感谢您的帮助。

致谢

Rakesh



4条回答
哎,真难
2020-09-16 14:18
 onPress:function(oEvent){
 sap.ndc.BarcodeScanner.scan(
 函数(mResult){
                               this.NavResult(mResult);
 },
 函数(错误){

 },
 函数(mParams){

 }
 ).bind(this);
 },

 NavResult:function(mResult){
 var oRouter = sap.ui.core.UIComponent.getRouterFor(this);
 oRouter.navTo(" ResultView",{barcode:" barcode"});

 } 

您能否尝试将此值绑定到上面的函数

一周热门 更多>