martmists
10/14/2023, 3:17 PMvar allItems by remember { mutableStateOf(emptyList<Page>()) }
LaunchedEffect(filter) {
println("Updating for $filter")
val url = "<https://my.site/pages?per_page=100&search=${filter.encodeURLPath()}>"
var checkForMore = true
var page = 1
val allPages = mutableListOf<Page>()
while (checkForMore) {
allItems = allPages
val res = Globals.client.get("$url&page=$page")
if (res.status != io.ktor.http.HttpStatusCode.OK) {
checkForMore = false
continue
}
val items = res.body<List<Page>>()
if (items.isEmpty()) {
checkForMore = false
} else {
allPages.addAll(items)
page++
}
}
allItems = allPages
println("Done setting for $filter: $allPages")
}
println(allItems)
LazyColumn {
items(allItems) { ... }
}
but for some reason when filter
gets changed (from a TextField
) it sometimes doesn't update properly, and although the "Done setting" println shows elements, nothing ends up being visible.Zach Klippenstein (he/him) [MOD]
10/14/2023, 10:12 PMfilter
changes, does “Updating for …” get printed?ascii
10/15/2023, 12:18 PMcollectAsState*
bridge methods.myanmarking
10/16/2023, 9:38 AMmartmists
10/19/2023, 7:30 PM