Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sapui5 如何获取视图的数据_Sapui5 - Fatal编程技术网

Sapui5 如何获取视图的数据

Sapui5 如何获取视图的数据,sapui5,Sapui5,我正在使用SAPUI5,我有一个母版页和一个详细页,在母版页中我有一个列表,当我在列表中选择de项时,信息显示在详细页中 在DetailPage中,我有一个PositiveAction,当我按下PositiveAction时,我需要获取DetailPage的数据,但我不知道怎么做 按项目的我的代码 onPoSelect : function(oEvent) { var oListItem = oEvent.getParameter('listItem'); var

我正在使用SAPUI5,我有一个母版页和一个详细页,在母版页中我有一个列表,当我在列表中选择de项时,信息显示在详细页中

在DetailPage中,我有一个PositiveAction,当我按下PositiveAction时,我需要获取DetailPage的数据,但我不知道怎么做

按项目的我的代码

onPoSelect : function(oEvent) {
        var oListItem = oEvent.getParameter('listItem');
        var oRouter = sap.ui.core.UIComponent.getRouterFor(this);
        oRouter.navTo("DetailPanel", {
            invoicePath: oListItem.getBindingContext("solped").getPath().substr(1)
        });

    },
详细信息面板中的我的代码

onInit: function (){
        var oRouter = sap.ui.core.UIComponent.getRouterFor(this);
        oRouter.getRoute("DetailPanel").attachPatternMatched(this._onObjectMatched, this);
    },
    _onObjectMatched: function (oEvent) {
        this.getView().bindElement({
            path: "/" + oEvent.getParameter("arguments").invoicePath,
            model: "solped"
        });
    },
行“oEvent.getParameter(“arguments”).invoicePath,”

退回这个

发票(CustomerName='Alfreds Futterkiste',折扣=0f,订单ID=10702,产品ID=3,产品名称='茴香糖浆',数量=6,销售人员='Margaret Peacko',ShipperName='Speedy Express',单价=10.0000M)

我有信息,但它是一个字符串,我如何在对象中转换这个字符串?或者,我如何访问视图中的信息

视图的图像


有关将字符串转换为对象的信息,请参见下面的示例

var a=“how r u”

VarB=[a]


您将在b中获得a的对象。

您可以通过将绑定路径作为参数传递给基础数据模型的getProperty函数,将所有属性作为对象来获得

var oModel = this.getView().getModel("solped");
var oProps = oModel.getProperty(oListItem.getBindingContext("solped").getPath());
然后,您可以按以下方式访问这些属性:

oProps.CustomerName;
oProps.OrderID;
...

我假设您已经可以在详细视图中看到详细信息的数据。 您将数据绑定到view by bindElement函数,并在寻找“getBindingContext”函数的代码中检索它们

在详图控制器中创建以下功能:

// this must be connected to Button -> <Button press="onPositivePress">
onPositivePress: function(oEvent) {

var oBindingContext = this.getView().getBindingContext("solped");

// this is the path you can use to call odata service
var sPath = oBindingContext.getPath();

// this is data you are looking for
var oReqData = oBindingContext.getObject();

}
//这必须连接到按钮->
onPositivePress:函数(oEvent){
var oBindingContext=this.getView().getBindingContext(“solped”);
//这是您可以用来调用odata服务的路径
var sPath=oBindingContext.getPath();
//这是您正在查找的数据
var oReqData=oBindingContext.getObject();
}