XMLビューでは、名前が 'foo'のページにバインドされたJSONモデルがあります。モデルのオブジェクトには、リストに表示する '名前'フィールドと子コレクション 'bar'(コードフィールドがあります)があります。これは、のようにモデル化されています子コレクションへの集約バインド
JSコード子供のバー「アレイのリスト項目の値が名「FOO」を介して解決されることを
var foo = { name:'My Name', bar:[{ code:'Code 1' }, { code:'Code 2' }] }
var fooModel = new sap.ui.model.JSONModel(foo);
page.setModel(fooModel, 'foo');
page.bindElement('foo>/');
XMLマークアップ
<Label text='{foo>name}'/>
<List items='{foo>bar}'>
<StandardListItem title='{foo>code}'/>
</List>
注意してください。少なくともこれは私のために働くもので、私はリストでそれらを参照する他の方法は見つけていません。
しかし、問題はどのように私のリスト項目の最上位の 'foo'オブジェクトデータも取得できますか?リスト項目にも「名前」フィールドを表示したかったとしますか? つまり、子コレクションを別の名前で参照できる次のものと同等の処理を行う方法はありますか?これを達成するための方法はありますか?
<List items="{ path:'foo>bar', name='bar' }">
<StandardListItem title='{bar>code}' info='{foo>name}' />
</List>
お返事ありがとうございます。私のために働いたのはinfo '{foo>/name}'なので、絶対パス技術が働いていました。 (最初の投稿を#bindElementの修正で編集しましたが、これはあなたの答えと私にとってうまくいかなかった小さな矛盾を説明しています) – dlgrasse
これはうまくいきません。つまり、それぞれが 'bar'配列を持つ 'foo'オブジェクトの配列があるとします。 "items = '{foo> /}'"と "items" = "{foo> bar '}"の内部リストを上位のリストにバインドすると、親オブジェクトを参照することができません(そして私はあなたが与えた答えの様々な順列を試しました)。 これが不明な場合は、元の投稿を編集してこの2番目の例を追加します。 – dlgrasse
page.bindElement( "foo> /")を使用していますか?モデル内のオブジェクトfooを指すには、 "foo>/foo"でなければなりません。 – matbtt