Merge pull request #318 from overlisted/eval-stuff

Eval stuff
This commit is contained in:
Jon Kelley authored and GitHub committed 2022-04-04 13:01:35 -04:00
commit 56ea9e42fa
7 files changed
+83 -4

No files matched your search

+1
View File
@@ -42,6 +42,7 @@ These examples are not necessarily meant to be run, but rather serve as a refere
| [Complete rsx reference](./rsx_usage.rs) | A complete reference for all rsx! usage | ✅ |
| [Event Listeners](./listener.rs) | Attach closures to events on elements | ✅ |
| [Inline Props](./inlineprops.rs) | Using the `#[inline_props]` macro | ✅ |
| [Eval](./eval.rs) | Evaluate dynamic JavaScript code | ✅ |
## Show me some examples!
+25
View File
@@ -0,0 +1,25 @@
use dioxus::prelude::*;
fn main() {
dioxus::desktop::launch(app);
}
fn app(cx: Scope) -> Element {
let script = use_state(&cx, String::new);
let eval = use_eval(&cx);
cx.render(rsx! {
div {
input {
placeholder: "Enter an expression",
value: "{script}",
oninput: move |e| script.set(e.value.clone()),
}
button {
onclick: move |_| eval(script),
"Execute"
}
}
})
}