Я использую SplitApp, у него есть список, и каждый элемент списка имеет одну стандартную плитку и имеет плитки внутри каждой детали. Когда я нажимаю плитку, она отображает детали плитки во фрагменте с использованием модели студенческой модели.
Мой контроллер:
onInit: function () {
var studentgetmodel = this.getOwnerComponent().getModel("studentmodel");
var oRouter = this.getOwnerComponent().getRouter(this);
oRouter.attachRoutePatternMatched(this._onObjectMatched, this);
},
_onObjectMatched: function () {
var id = this.getView().getModel("studentselectmodel").getData().index;
this.getView().bindElement("studentmodel>/studentdata1/" + id);
},
/*fragment dialog open*/
presstile1: function (oEvent) {
if (!this.Dialog) {
this.Dialog = sap.ui.xmlfragment("sample.dgsplittapp.fragment.demo", this);
this.getView().addDependent(this.Dialog);
var spath=oEvent.getParameter("listItem").getBindingContext("studentmodel").getPath();
var id=spath.split("/")[2];
this.getView().getModel("studentselectmodel").getData().index=id;
}
this.Dialog.open();
},
onClose: function () {
this.Dialog.close();
this.getSplitAppObj().to(this.createId("detail0"));
}
Мой demo.fragment.xml
z<Label text="Student Name" design="Bold" ></Label>
<Text id="idname" text="{studentmodel>studentname}"></Text>
<Label text="Student Blood Group" design="Bold" ></Label>
<Text id="idbgrp" text="{studentmodel>bloodgroup}"></Text>