0
때때로 나는에 컨트롤 속성을 바인딩 할 요구 사항이 구문은 다음과 같이 볼 수 있었다 (하지만 작동하지 않습니다) 예를 들어 다른 모델 B.SAPUI5 컨트롤 속성을 바인딩 외부의 데이터로 바인딩하는 방법은 무엇입니까?
에 모델 A의 출력 데이터를 기반으로 :
text : "{B>/rootB/{A>someValue}/propertyB}"
일반적으로이 함수는 형식 함수와 함께 사용되지 않는 컨트롤 속성을 "잘못 사용"하여이 문제를 해결합니다.
tooltip : {
path : "A>someValue",
formatter : function(oValue) {
// do some checks on oValue
var path = "B>/rootB/"+oValue+"/propertyB";
this.bindProperty("text", path);
return undefined; // because tooltip is not used
}
"A> someValue"가 변경 될 때마다 "텍스트"의 바인딩이 자동으로 업데이트됩니다. 템플릿 코드에서이를 수행 할 수도 있습니다 (예 : 항목 집계).
그러나 코드를 냄새가있다)
어떤 제안이 청소기 만들려면?
좋은 생각하지만, (필요한 경우) 작동하지 않습니다 바인딩 양방향 이상 : 그냥 액세스 권한이있는 모든 모델에서 필요한 값을 읽을 수있는 포맷을 사용할 수 있습니까? – user3783327
포맷터를 사용할 때는 양방향 바인딩이 지원되지 않습니다. 이러한 경우 컨트롤 값을 변경할 때 change 이벤트를 사용하여 데이터 모델을 업데이트합니다. – phigem