fix: lifetimes again
This commit is contained in:
1 parent
4981e4c26b
commit
a325c03dd9
1 file changed
+5
-5
@@ -30,7 +30,7 @@ struct ClickableProps<'a> {
|
||||
title: &'a str
|
||||
}
|
||||
|
||||
fn Clickable<'a>(cx: Scope<'a, ClickableProps>) -> Element {
|
||||
fn Clickable<'a>(cx: Scope<'a, ClickableProps<'a>>) -> Element {
|
||||
cx.render(rsx!(
|
||||
a {
|
||||
href: "{cx.props.href}"
|
||||
@@ -98,7 +98,7 @@ struct ClickableProps<'a> {
|
||||
children: Element<'a>
|
||||
}
|
||||
|
||||
fn Clickable<'a>(cx: Scope<'a, ClickableProps>) -> Element {
|
||||
fn Clickable<'a>(cx: Scope<'a, ClickableProps<'a>>) -> Element {
|
||||
cx.render(rsx!(
|
||||
a {
|
||||
href: "{cx.props.href}",
|
||||
@@ -125,7 +125,7 @@ While technically allowed, it's an antipattern to pass children more than once i
|
||||
However, because the `Element` is transparently a `VNode`, we can actually match on it to extract the nodes themselves, in case we are expecting a specific format:
|
||||
|
||||
```rust
|
||||
fn clickable<'a>(cx: Scope<'a, ClickableProps>) -> Element {
|
||||
fn clickable<'a>(cx: Scope<'a, ClickableProps<'a>>) -> Element {
|
||||
match cx.props.children {
|
||||
Some(VNode::Text(text)) => {
|
||||
// ...
|
||||
@@ -160,7 +160,7 @@ struct ClickableProps<'a> {
|
||||
attributes: Attributes<'a>
|
||||
}
|
||||
|
||||
fn clickable(cx: Scope<ClickableProps>) -> Element {
|
||||
fn clickable(cx: Scope<ClickableProps<'a>>) -> Element {
|
||||
cx.render(rsx!(
|
||||
a {
|
||||
..cx.props.attributes,
|
||||
@@ -184,7 +184,7 @@ struct ClickableProps<'a> {
|
||||
onclick: EventHandler<'a, MouseEvent>
|
||||
}
|
||||
|
||||
fn clickable<'a>(cx: Scope<'a, ClickableProps>) -> Element {
|
||||
fn clickable<'a>(cx: Scope<'a, ClickableProps<'a>>) -> Element {
|
||||
cx.render(rsx!(
|
||||
a {
|
||||
onclick: move |evt| cx.props.onclick.call(evt)
|
||||
|
||||
Reference in new issue
Block a user