2017-03-19 1 views
0

'Fiori'타일 ​​구성에서 'app'라는 매개 변수를 내 앱에 전달하고 데이터 바인딩에 사용하고 싶습니다. xml보기에서 동적 필터링을 사용할 수없고 this question 제안은 attachAfterRendering 기능을 사용하는 것입니다. 내보기 컨트롤러에서 다음 코드를 시도했지만 결과가 일치하지 않는 경우가 있으며 데이터가 올바르게로드되고 '데이터 없음'이 표시됩니다. 어떤 도움이라도 대단히 감사하겠습니다.TreeTable 바인딩에 동적 필터 추가하기

onInit: function() { 

     var oStartupParameters = this.getMyComponent().getComponentData().startupParameters; 

     this._oView = this.getView(); 
     this._oView.attachAfterRendering(function() { 
      var oTreeTable = this.byId("treeTable"); 
      oTreeTable.bindAggregation("rows", { 
       path: "/Nodes", 
       filters: [ 
        new sap.ui.model.Filter("Application", sap.ui.model.FilterOperator.EQ, oStartupParameters["app"]) 
       ] 
      }); 
     }); 
    } 

답변

1

언급 한 게시물은 XML보기의 필터 정의에서 동적 바인딩 표현식 사용에 관한 것입니다. 내 이해에서, 당신 것과 같은 경우는 아닙니다.

attachAfterRendering을 사용하지 않으면 oStartupParameters을 검색 한 후 onInit 함수의 바인딩 정보에서 필터를 정의 할 수 있습니다. 이 example을 확인하십시오. 고맙습니다.

var oTreeTable = this.byId("treeTable"); 
oTreeTable.bindRows({ path: "/Nodes", filters: [ 
       new sap.ui.model.Filter("Application", sap.ui.model.FilterOperator.EQ, oStartupParameters["app"]) 
      ]}); 
+0

감사합니다. 내가 시작한 것처럼 도움을 주셔서 감사합니다. – user2823030