2016-03-22 6 views
-1

Ich habe in meiner Controller-Funktion onRoutePatternMatched eine Tabelle erstellt. Jetzt möchte ich diese Tabelle zur Ansicht bringen. Dies sollte gemacht werden mit oTable.placeAt("sample1");Tabelle in XML-Ansicht einfügen

Was ist der richtige Code, um es an einer bestimmten Stelle in meiner XML-Ansicht einfügen?

Home.view.xml

<?xml version="1.0" encoding="UTF-8" ?> 
<mvc:View controllerName="ztest.controller.VarConf" xmlns:mvc="sap.ui.core.mvc" xmlns="sap.m" 
    xmlns:html="http://www.w3.org/1999/xhtml"> 
    <Page> 
       <content id="sample1"></content> 
     <content id="sample2"> 
      <Label text="{varConfDet>/chassisnr}" /> 

     </content> 
    </Page> 
</mvc:View> 

Fehler: sap-ui-core.js:152 Uncaught Error: DOM element with ID 'sample1' not found in page, but application tries to insert content.

+0

Warum definieren Sie nicht die Tabelle in der Ansicht? – matbtt

Antwort

0
  1. eine ID auf der Seite angelegt und nicht auf seine Content-Aggregation (e): <Page id="myPge">
  2. in Controller-Aufruf this.getView().byId("myPage").addContent(oTable);

Da Inhalt die Standardaggregation von sap.m.Page ist, können Sie auch nur this.getView().byId("myPage").add(oTable); aufrufen. Beachten Sie auch, dass Sie zuvor hinzugefügten Inhalt entfernen können ... Natürlich könnten Sie auch verschiedene Panels usw. mit verschiedenen IDs verwenden und die Tabelle irgendwo dazwischen platzieren ...

Verwandte Themen