如何在SAPUI5中将控制器内容用于view.js

时间:2015-08-06 06:35:21

标签: sapui5

我正在尝试将输入值从一个视图传递到另一个视图

的firstView

oFooter.addContent(new sap.m.Button("b1", {
        text   : "Execute",
        icon   : "sap-icon://display",
        styled : false,
        press  : function() {        
            var In_obj = sap.ui.getCore().byId('inobj').getValue();
            var Ins_obj = sap.ui.getCore().byId('insobj').getValue();
            var In_exid = sap.ui.getCore().byId('exid').getValue();
            var In_dp1 = sap.ui.getCore().byId('DP1').getValue();
            var In_dp2 = sap.ui.getCore().byId('DP2').getValue();
            var In_usr = sap.ui.getCore().byId('User').getValue();
            var In_tcd = sap.ui.getCore().byId('tcode').getValue();
            var In_prg = sap.ui.getCore().byId('prog').getValue();

            app.to("page2", {
                Input_obj : In_obj,
                Input_sobj : Ins_obj,
                Input_exid : In_exid,
                Input_dp1 : In_dp1,
                Input_dp2 : In_dp2,
                Input_usr : In_usr,
                Input_tcd : In_tcd,
                Input_prg : In_prg,
            });

        }
    }));

Secondview.controller.js

onInit : function() {
                     alert("second page init"  );
                      view.addEventDelegate({
                      onBeforeShow: function(evt) {

                      var idToRetrieve = evt.data.Input_obj;
                      Input_obj = idToRetrieve.getValue();
                      var idToRetrieve = evt.data.Input_sobj;
                      Input_sobj = idToRetrieve.getValue();
                      var idToRetrieve = evt.data.Input_exid;
                      Input_exid = idToRetrieve.getValue();
                      var idToRetrieve = evt.data.Input_dp1;
                      Input_dp1 = idToRetrieve.getValue();
                      var idToRetrieve = evt.data.Input_dp2;
                      Input_dp2 = idToRetrieve.getValue();
                      var idToRetrieve = evt.data.Input_usr;
                      Input_usr = idToRetrieve.getValue();
                      var idToRetrieve = evt.data.Input_tcd;
                      Input_tcd = idToRetrieve.getValue();
                      var idToRetrieve = evt.data.Input_prg;
                      Input_prg = idToRetrieve.getValue();
                      alert( Input_obj );
                      console.log( Input_obj);
                    }});
                },

现在,我不知道如何在Input_obj中使用变量(Input_sobjSecondview.js(view),...)。我可以对此有一些指导吗?

1 个答案:

答案 0 :(得分:0)

就我在代码中看到的而言,idToRetrieve应该具有ID为inobj的元素的值(文本)。 您在调用app.to方法时传递dataobj,因此在onbeforeshow方法中数据应该可用。

SAPUI5中有一个路由概念,也可以在这里使用 Routing

但是使用当前的方法,我可以看到数据应该在onbeforeshow方法中可用

例如

gather_dominators.sh <pid>