sdk: 3.5.1
Я не знаком с listView
механикой. Я пытаюсь понять, как применять значения данных JSON к связанным свойствам шаблона элемента.
Я начинаю с сопоставления данных
//example
var data = ({data:json-data, index:'label'});
var _data = _.map(data, function(item, index) {
return {
properties: {
categoryLabel: index,
data: item
}
}
});
Затем я хочу привязать его к своему списку
$.activityDetailsList.sections[0].setItems(_data);
На мой взгляд у меня
<ListView defaultItemTemplate="activityDetailsListItemTemplate" id="activityDetailsList">
<Templates>
<ItemTemplate name="activityDetailsListItemTemplate">
<Label bindId="categoryLabel" class="rowTitle" id="categoryLabel"/>
<View bindId="rightSpacer" id="rightSpacer">
<ImageView bindId="arrowImage" id="arrowImage"/>
</View>
</ItemTemplate>
</Templates>
<ListSection id="activityDetailsListSection">
<ListItem template='activityDetailsListItemTemplate'/>
</ListSection>
</ListView>
Когда я перебираю пять элементов, все, что я получаю, — это пустые строки с соответствующими стрелками.
Вот мой вопрос: как мне отобразить текстовые значения categoryLabel
? Должен ли я определять это в шаблоне? Эта часть мне не ясна. Я думал, что достаточно просто привязать данные к шаблону. Очевидно нет.