用 js 数组中的值填充我的 view.xml 列表

Fill my List at view.xml with values from js array

我想用包含数组 (arr) 的对象的值填充 view.xml 中的列表。我之前通过 Web 服务从 SAP 软件获取对象。

Test.view.xml:

<HBox>
                            
   <List id="select_menu" visible="hidde" mode="SingleSelectMaster" selectionChange="onDetail">
         <StandardListItem title="{Id}" />
   </List>
</HBox>

test.controller.js:

        onTest: function(){
            var itemTemplate = new sap.m.StandardListItem({
                title : "{Id}",             
                icon: "icons/yellow_sign_micro.png",                
                iconInset: false,               
                customData: [               
                new sap.ui.core.CustomData({                
                key: "flag",                
                value: "false"              
                })]
                });
            this.getView().byId("select_menu").bindAggregation("items", {
                path: arr,
                template: itemTemplat               
                })
        }
    });
var myModel = new sap.ui.model.json.JSONModel();
myModel.setData(yourResponseFromWebservice);

不需要用JS创建控件。您可以使用 XML 进行绑定。 将数据写入 JSON Model 并通过 items

将模型与列表绑定
 <List items="{myModel>/items}" id="select_menu" visible="hidden" mode="SingleSelectMaster" selectionChange="onDetail">
    <items>
        <StandardListItem icon="icons/yellow_sign_micro.png" title="{myModel>Id}" >
        <customData>
          <core:CustomData key="flag" value="false" writeToDom="true" />
       </customData>
       </StandardListItem>
    </items>
 </List>