fix: instantly resolving futures should not use popping

This commit is contained in:
Jonathan Kelley committed 2022-03-24 11:15:07 -04:00
1 parent dc028df0dd
commit d50e86492e
2 files changed
+32 -3

No files matched your search

+28
View File
@@ -0,0 +1,28 @@
#![allow(non_snake_case)]
//! This example proves that instantly resolving futures don't cause issues
use dioxus::prelude::*;
fn main() {
dioxus::desktop::launch(App);
}
fn App(cx: Scope) -> Element {
cx.render(rsx!(Demo {}))
}
fn Demo(cx: Scope) -> Element {
let fut1 = use_future(&cx, (), |_| async move {
std::thread::sleep(std::time::Duration::from_millis(100));
10
});
cx.render(match fut1.value() {
Some(value) => {
let content = format!("content : {:?}", value);
rsx!(div{ "{content}" })
}
None => rsx!(div{"computing!"}),
})
}