← Каталог
Flow в Kotlin — Поиск по мере ввода — полный шаблон
Фрагмент из «Flow в Kotlin»: Поиск по мере ввода — полный шаблон.
val queryFlow: Flow<String> = textChanges()
val resultsFlow: Flow<List<Item>> =
queryFlow
.map { it.trim() }
.debounce(300)
.distinctUntilChanged()
.flatMapLatest { query ->
if (query.isBlank()) {
flowOf(emptyList())
} else {
repository.search(query)
}
} val queryFlow: Flow<String> = textChanges()
val resultsFlow: Flow<List<Item>> =
queryFlow
.map { it.trim() }
.debounce(300)
.distinctUntilChanged()
.flatMapLatest { query ->
if (query.isBlank()) {
flowOf(emptyList())
} else {
repository.search(query)
}
}