In der Ansicht ist ein Kontext festgelegt, und ich möchte eine Eigenschaft an ein Label binden, diese Eigenschaft muss jedoch an ein anderes Modell als den Kontext gebunden sein. Ich habe versucht:Mutimodel JSON-BInding funktioniert nicht
createLabel: function(){
return new sap.m.Label({
text: {labelname}
}).bindProperty("visible","{/contextExisting}","detailModel");
auch versucht:
.bindProperty("visible","{detailModel>contextExisting}");
und:
.bindProperty("visible","{detailModel>/contextExisting}");
und die JSONModel:
this._detailJSONModel.setData({"contextExisting" : false});
das Modell mit global festgelegt ist:
sap.ui.getCore().setModel(this._detailJSONModel,"detailModel");
Das Modell isn't im gleichen .View erstellt, aber ich kann mit dem Modell in der jeweiligen Ansicht erreichen:
sap.ui.getCore().getModel("detailModel");
Ich weiß nicht, was noch falsch mit der Bindung hier. Die Kontextbindung ist korrekt und funktioniert.
Sie können versuchen, ohne die Funktion zu laufen 'bindProperty': ' return new sap.m.Label ({ Text: "{labelname}" , sichtbar: "{detailModel>/contextExisting}" }) – herrlock
Die zweite Sache, die Sie versuchen können, ist 'this.getModel (" detailModel "). GetData()' in Ihrer Ansicht und überprüfen Sie das Ergebnis. – herrlock
Der Labelname ist nicht das Problem. Das funktioniert gut. Das Property-Binding funktioniert nicht. – RenPen