У меня есть поле со списком, которое заполняется вызовом odata.
С домашней страницы я перехожу на страницу с этим полем со списком и хочу, чтобы в этом поле со списком выбирался первый элемент вызова ODATA в качестве элемента по умолчанию / выбранного элемента.
Я использую bindAggregation для заполнения поля со списком в функции onInit()
После привязки объекта я хочу прочитать список, взять первый и выделить его.
bindComboBox: function() {
var comboBox = oView.byId("ComboBoxID");
comboBox.bindAggregation("items", {
path: path,
parameters: param,
sorter: sorter,
template: template,
filters: filter,
events: {
dataReceived: this.selectFirstItemFunction()
}
}
selectFirstItemFunction: function() {
var comboBox = oView.byId("ComboBoxID");
var comboBoxItems = comboBox.getItems(); // This ends up being undefined.
comboBox.setSelectedItem(comboBoxItems[0]);
}
Когда я это делаю, var comboBoxItems
в selectFirstItemFunction()
всегда пусто / не определено.
Я также пробовал поместить selectFirstItemFunction()
внутрь onAfterRendering()
, но это тоже не сработало.
Если страница уже загружена, а я делаю selectFirstItemFunction()
, поле со списком работает, как задумано.
Есть мысли о том, как правильно загрузить поле со списком?