SAPUI5/OpenUI5 関連の小ネタです。 複数のプロパティをデータバインドする方法についてです。
XMLView の場合、複数プロパティは以下のように割と簡単に実現できるのですが、JSView の場合はどうすればいいのでしょうか?
<text text="{Width} x {Depth} x {Height} {DimUnit}"></text>
答えはこちらです。
new sap.m.Text({
text: {
parts: [
{ path: "Width" },
{ path: "Depth" },
{ path: "Height" },
{ path: "DimUnit" },
],
formatter: function (width, depth, height, dimUnit) {
return width + " x " + depth + " x " + height + " " + dimUnit;
},
},
});
通常の formatter を使ったデータバインドはpath
とformatter
プロパティをセットすればいいのですが、複数プロパティの場合はpath
をparts
の中に含めればできます。
最近、公式のサンプルを見る限り View は XMLView を使って書くべきみたいな流れになっていて、JSView のサンプルが減ってきていますね。。。
こちらに載っていた情報です。