Tlaster / PreCompose

Compose Multiplatform Navigation && State Management

Home Page:https://tlaster.github.io/PreCompose/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

compose desktop 当点击关闭窗口时,NavHost中的内容变成了空白

Matcha-xiaobin opened this issue · comments

fun main() = application {
var exitDialog by remember { mutableStateOf(false) }
Window(
onCloseRequest = {
exitDialog = true
}
) {
AppTheme {
PreComposeApp {
App(window)
if (exitDialog) {
showTextDialog(
content = "Are you sure?"
) {
if (it) {
exitApplication()
}
exitDialog = false
}
}
}
}
}
}

NavHost相关:
val navigator = rememberNavigator()
NavHost(
navigator = navigator,
initialRoute = "home"
) {
scene("home") {
...
}
}

当我点击关闭窗口时,会弹出弹窗询问是否确定关闭,但此时,NavHost中的内容已经变成了空白。

image
当我点击关闭时,触发了这个,导致清空了backStacks中的内容

image
若使用windowClosed,而不是windowClosing,是否可以解决这个问题?
image

是的,我已经在 #188 进行修复

顺带的,我想提一个建议,我想通过navigator 轻松的获取当前在哪个位置

顺带的,我想提一个建议,我想通过navigator 轻松的获取当前在哪个位置

navigator.currentEntry 应该能够满足你的需求

哦,好的,确实可以,是我没注意到这个