DioxusLabs / DioxusLabs/dioxus

Recursively invoking the same event listener panics

Open
#5,574 3 comments 0 reactions 0 assignees View on GitHub
bug core
Dominant language
Rust
Stars
39.1k
Forks
1.9k
Avg merge
4d 10h
Merged PRs (30d)
4

Description

**Problem**

Calling the same event listener from itself panics

**Steps To Reproduce**

```rust
use dioxus::prelude::*;

fn main() {
dioxus::launch(app);
}

fn app() -> Element {
let mut mounted_input = use_signal(|| None::>);

rsx! {
input {
onmounted: move |event| {
let element = event.data();
mounted_input.set(Some(element.clone()));

_ = element.set_focus(true);
_ = element.set_focus(false);
},
onblur: move |_| {
if let Some(element) = mounted_input.read().clone() {
_ = element.set_focus(true);
_ = element.set_focus(false);
}
},
}
}
}
```

**Environment:**

- Dioxus version: main
- Rust version: nightly
- OS info: macos
- App platform: web

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.