Как я могу заставить JSONModel получить начальное значение элемента управления?

#javascript #sapui5

Вопрос:

Я использую SAPUI5. У меня есть форма, которая при отправке добавляет эти данные в новую строку таблицы.

У меня есть JSONModel, привязанный к различным элементам управления в форме, которая затем копируется в новую модель для таблицы sap.m.для создания новой записи строки.

Проблема в том, что модель изначально пуста и будет создавать свойства для привязок элементов управления только при изменении значения (при вводе текста, установке флажка, выборе из выпадающего списка и т. Д.). В противном случае свойство даже не будет существовать в модели.

Это особенно заметно в элементах управления Select. Выбран верхний параметр по умолчанию, но если вы не выберете другой параметр, результирующее свойство в jsonmodel не будет существовать.

Чтобы проиллюстрировать:
jsonmodel = {}
sap.m.Input value="{model>/input1}"
sap.m.Input value="{model>/input2}"

Пользователь вводит данные в первое поле ввода и отправляет.
jsonmodel = {"input1": "xyz"}
Нет значения для «input2»

Как можно устранить эту проблему? Я не хочу создавать модель со всеми свойствами явно и устанавливать для них пустое значение. Есть ли способ, которым модель может узнать значения, к которым она привязана, и включить их автоматически без необходимости сначала изменять их вручную?

Комментарии:

1. Если вы не добавляете его изначально, модель не будет знать о существовании свойства, пока оно не будет изменено.