Fix: bug that phantom triggered events

This commit is contained in:
Jonathan Kelley committed 2021-03-02 00:21:11 -05:00
1 parent 4b8e9f4a12
commit 07f671c8e1
2 files changed
+18 -19

No files matched your search

-1
View File
@@ -6,7 +6,6 @@ use dioxus_web::WebsysRenderer;
fn main() { fn main() {
wasm_logger::init(wasm_logger::Config::new(log::Level::Debug)); wasm_logger::init(wasm_logger::Config::new(log::Level::Debug));
console_error_panic_hook::set_once(); console_error_panic_hook::set_once();
wasm_bindgen_futures::spawn_local(WebsysRenderer::start(Example)) wasm_bindgen_futures::spawn_local(WebsysRenderer::start(Example))
} }
+18 -18
View File
@@ -78,30 +78,30 @@ impl EventDelegater {
let typ = event.type_(); let typ = event.type_();
let gi_id: usize = target let gi_id = target
.get_attribute(&format!("dioxus-giid-{}", typ)) .get_attribute(&format!("dioxus-giid-{}", typ))
.and_then(|v| v.parse().ok()) .and_then(|v| v.parse().ok());
.unwrap_or_default();
let gi_gen: u64 = target let gi_gen = target
.get_attribute(&format!("dioxus-gigen-{}", typ)) .get_attribute(&format!("dioxus-gigen-{}", typ))
.and_then(|v| v.parse().ok()) .and_then(|v| v.parse().ok());
.unwrap_or_default();
let li_idx: usize = target let li_idx = target
.get_attribute(&format!("dioxus-lidx-{}", typ)) .get_attribute(&format!("dioxus-lidx-{}", typ))
.and_then(|v| v.parse().ok()) .and_then(|v| v.parse().ok());
.unwrap_or_default();
// Call the trigger if let (Some(gi_id), Some(gi_gen), Some(li_idx)) = (gi_id, gi_gen, li_idx) {
trigger.0.as_ref()(EventTrigger::new(
virtual_event_from_websys_event(event), // Call the trigger
CbIdx { trigger.0.as_ref()(EventTrigger::new(
gi_gen, virtual_event_from_websys_event(event),
gi_id, CbIdx {
listener_idx: li_idx, gi_gen,
}, gi_id,
)); listener_idx: li_idx,
},
));
}
}) as Box<dyn FnMut(&Event)>); }) as Box<dyn FnMut(&Event)>);
self.root self.root