2015-10-27 4 views
0

У меня есть список элементов, созданный с использованием заводской функции. Я программно обновляю свойство на модели, основанное на другом событии на экране. Стандартный поток - это вызов слияния, а затем обновление в той же партии.Редактирование пользовательского интерфейса Surpress при изменении oDatamodel

Проблема, с которой я сталкиваюсь, заключается в том, что первоначальное изменение модели инициирует переупорядочение элементов, а затем через несколько секунд обновление вызывает перерисовку. Мне интересно, может ли кто-нибудь узнать, возможно ли временно приостановить событие повторной обработки связанного компонента пользовательского интерфейса в режиме изменения?

Derek.

+0

Есть ли причина, по которой вы вызываете refresh(), хотя модель была просто обновлена ​​из-за вызова update()? – hhllcks

+0

Я не называю обновление явно ... когда я делаю набор на модели, он запускает повторную визуализацию фабрики, прежде чем я даже отправлю изменения ... Когда я отправляю изменение, он выполняет слияние, подсчет и чтение в bactch ... – DerekVincent

+0

Было бы полезно, если бы вы могли разместить соответствующие части кода. – Carsten

ответ

0

Или вы можете установить refreshAfterChange на false.

Почему вы используете пакетную обработку? вы пробовали?

+0

RefreshAfterChange, похоже, подавляет обновление модели после, и я использую партии, чтобы уменьшить количество вызовов на бэкэнд ... Я пробовал без него ... Проблема в том, что в ту минуту, когда я касаюсь модели, она запускает фабрику списка элементов для перерисовки ... Я хочу, чтобы я хотел, чтобы фабрика перерисовывалась после обновления, и я возвращаю свои новые данные. – DerekVincent

+0

Я вижу, хотя я думаю, что вы должны просто сделать обновление своей модели, я думаю, что это не то, что вы хотите. Я могу придумать еще один трюк, но если это не сработает, вы должны подумать о том, чтобы перейти с прямым обновлением. Что вы можете сделать, это зарегистрироваться для события [** updateStarted **] (https://sapui5.netweaver.ondemand.com/#docs/api/symbols/sap.m.ListBase.html#attachUpdateStarted) и попробовать, если вы может предотвратить значение по умолчанию. В функции onInit получите ваш список: var oList = this.getView(). ById ("list"); oList.attachEvent ("updateStarted", function (e) {e.preventDefault();}); –

Смежные вопросы