将Var从一个javascript类传递给另一个

时间:2016-08-01 10:20:04

标签: javascript sapui5 var

我有一个控制器和一个视图类。在我的控制器类中,我有这个代码。我正在尝试获取在网址中传递的AccNo。我知道这段代码可以很好地检索帐号,但我现在需要将Var传递给视图类。

    getURLParameter : function(name) {
        return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search)||[,""])[1].replace(/\+/g, '%20'))||null
    },

    // Parse URL parameters 
    parseAndSetURLParameters : function(){

        var accNo    = this.getURLParameter('accNo');

    },

1 个答案:

答案 0 :(得分:0)

首先,您可能需要查看jQuery.sap.getUriParameters

要使变量可用于视图,最简单,最方便的方法是使用这样的JSONModel:

parseAndSetURLParameters: function() {
  var oModel = new sap.ui.model.json.JSONModel({
    accNo: jQuery.sap.getUriParameters().get("accNo");
  });
  this.getView().setModel(oModel, "view");
}

并在您的XMLView中:

<Text text="{view>/accNo}" />

或者更一般地说,您可以在JSONModel中抽取所有uri参数并在Component上设置它(请注意我在这里使用内部api('mParams')):

new sap.ui.model.json.JSONModel(jQuery.sap.getUriParameters().mParams);

BR 克里斯