Повторный поиск возможен, если подписка реагирует на любое изменение значения, не отличая набор текста от выбора готовой подсказки.
Что произойдёт, если пользователь кликнет на подсказку и текст в поле ввода изменится — не запустится ли повторный поиск по уже выбранному значению? Как можно решить эту проблему?
Повторный поиск возможен, если подписка реагирует на любое изменение значения, не отличая набор текста от выбора готовой подсказки.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Что произойдёт, если пользователь кликнет на подсказку и текст в поле ввода изменится — не запустится ли повторный поиск по уже выбранному значению? Как можно решить эту проблему?
Ответ
Повторный поиск возможен, если подписка реагирует на любое изменение значения, не отличая набор текста от выбора готовой подсказки.
Разделите query и selectedItem либо передавайте причину изменения. При выборе запишите выбранный объект, закройте список и отмените ожидающий поиск; debounce сам эту проблему не решает. Следующий реальный ввод должен снова сбросить выбор и разрешить запросы.