在控制器中创建全局变量

2020-09-20 16:11发布

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

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


您好,我想在控制器中创建一个全局变量,所以不必在其他函数中再次创建变量

这是我的代码:

 onInit:function(){

 },

 onBuscar:function(){
 var oData =新的JSONModel;
 oData.rut = this.byId(" irut")。getValue();
 oData.nombres = this.byId(" iNombres")。getValue();
 oData.apellidos = this.byId(" iApellidos")。getValue();
 oData.calle = this.byId(" iDir1")。getValue();
 oData.numero = this.byId(" iDir2")。getValue();
 oData.casa = this.byId(" iDir3")。getValue();
 oData.comuna = this.byId(" iDir4")。getValue();
 oData.tlfFijo = this.byId(" iTlf1")。getValue();
 oData.tlfMovil = this.byId(" iTlf2")。getValue();
 oData.mail = this.byId(" iMail")。getValue();
 oData.pais = this.byId(" iPais")。getValue();

 MessageToast.show(oData.rut);
 },

 onModif:function(){

 },

 onCrear:function(){

 }
 

我尝试在oninit函数中创建,但遇到这样的未定义变量错误

 onInit:function(){

 this.oData =新的JSONModel;

 oData.rut = this.byId(" irut")。getValue;

 },
 onBuscar:function(){MessageToast.show(oData.rut);
 } 

有什么建议吗? 谢谢!

更新1

我尝试了这个,但是当我打印时,我的值是空的:/除非我的输入是可编辑的假

 onInit:function(){
 $ .oData =新的JSONModel;
 $ .oData.rut = this.byId(" irut")。getValue();
 $ .oData.nombres = this.byId(" iNombres")。getValue();
 $ .oData.apellidos = this.byId(" iApellidos")。getValue();
 $ .oData.calle = this.byId(" iDir1")。getValue();
 $ .oData.numero = this.byId(" iDir2")。getValue();
 $ .oData.casa = this.byId(" iDir3")。getValue();
 $ .oData.comuna = this.byId(" iDir4")。getValue();
 $ .oData.tlfFijo = this.byId(" iTlf1")。getValue();
 $ .oData.tlfMovil = this.byId(" iTlf2")。getValue();
 $ .oData.mail = this.byId(" iMail")。getValue();
 $ .oData.pais = this.byId(" iPais")。getValue();
 },

 onBuscar:function(){

 MessageToast.show($。oData.rut);
 },

 

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

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


您好,我想在控制器中创建一个全局变量,所以不必在其他函数中再次创建变量

这是我的代码:

 onInit:function(){

 },

 onBuscar:function(){
 var oData =新的JSONModel;
 oData.rut = this.byId(" irut")。getValue();
 oData.nombres = this.byId(" iNombres")。getValue();
 oData.apellidos = this.byId(" iApellidos")。getValue();
 oData.calle = this.byId(" iDir1")。getValue();
 oData.numero = this.byId(" iDir2")。getValue();
 oData.casa = this.byId(" iDir3")。getValue();
 oData.comuna = this.byId(" iDir4")。getValue();
 oData.tlfFijo = this.byId(" iTlf1")。getValue();
 oData.tlfMovil = this.byId(" iTlf2")。getValue();
 oData.mail = this.byId(" iMail")。getValue();
 oData.pais = this.byId(" iPais")。getValue();

 MessageToast.show(oData.rut);
 },

 onModif:function(){

 },

 onCrear:function(){

 }
 

我尝试在oninit函数中创建,但遇到这样的未定义变量错误

 onInit:function(){

 this.oData =新的JSONModel;

 oData.rut = this.byId(" irut")。getValue;

 },
 onBuscar:function(){MessageToast.show(oData.rut);
 } 

有什么建议吗? 谢谢!

更新1

我尝试了这个,但是当我打印时,我的值是空的:/除非我的输入是可编辑的假

 onInit:function(){
 $ .oData =新的JSONModel;
 $ .oData.rut = this.byId(" irut")。getValue();
 $ .oData.nombres = this.byId(" iNombres")。getValue();
 $ .oData.apellidos = this.byId(" iApellidos")。getValue();
 $ .oData.calle = this.byId(" iDir1")。getValue();
 $ .oData.numero = this.byId(" iDir2")。getValue();
 $ .oData.casa = this.byId(" iDir3")。getValue();
 $ .oData.comuna = this.byId(" iDir4")。getValue();
 $ .oData.tlfFijo = this.byId(" iTlf1")。getValue();
 $ .oData.tlfMovil = this.byId(" iTlf2")。getValue();
 $ .oData.mail = this.byId(" iMail")。getValue();
 $ .oData.pais = this.byId(" iPais")。getValue();
 },

 onBuscar:function(){

 MessageToast.show($。oData.rut);
 },

 
付费偷看设置
发送
6条回答
jovirus
1楼 · 2020-09-20 16:46.采纳回答

我建议使用模型来绑定数据。

但是如果您偏爱使用它,则必须在onInit()之前在controller中声明变量。 另外,您不需要使用此:

 this.oData =新的JSONModel;

 oData.rut = this.byId(" irut")。getValue;
 

因为您修改了json模型的标准结构以获取价值。

查看指南以了解如何使用MVC模型

https://sapui5.hana.ondemand.com/#/topic/3da5f4be63264db99f2e5b04c5e853db

三十六小时_GS
2楼-- · 2020-09-20 16:27
南山jay
3楼-- · 2020-09-20 16:21

这不是一个好习惯。 但是,您可以使用this.myVar ='value1'; 并在任何函数中使用它。

粗暴的香蕉
4楼-- · 2020-09-20 16:40

谢谢,因此,为避免重写相同的代码,您建议采取什么措施?

宇峰Kouji
5楼-- · 2020-09-20 16:34

在大多数情况下,这是个坏主意。

浮生未央
6楼-- · 2020-09-20 16:25

谢谢! Jun ,但我想避免重写相同的代码

一周热门 更多>