diff --git a/packages/yew-macro/src/html_tree/html_dashed_name.rs b/packages/yew-macro/src/html_tree/html_dashed_name.rs index 72b3471d217..4301e61746d 100644 --- a/packages/yew-macro/src/html_tree/html_dashed_name.rs +++ b/packages/yew-macro/src/html_tree/html_dashed_name.rs @@ -79,7 +79,7 @@ impl Parse for HtmlDashedName { let name = input.call(Ident::parse_any)?; let mut extended = Vec::new(); while input.peek(Token![-]) { - extended.push((input.parse::()?, input.parse::()?)); + extended.push((input.parse::()?, input.call(Ident::parse_any)?)); } Ok(HtmlDashedName { name, extended }) diff --git a/packages/yew-macro/tests/html_macro/html-element-pass.rs b/packages/yew-macro/tests/html_macro/html-element-pass.rs index 3729c3ec362..a836c0f974d 100644 --- a/packages/yew-macro/tests/html_macro/html-element-pass.rs +++ b/packages/yew-macro/tests/html_macro/html-element-pass.rs @@ -118,6 +118,9 @@ fn compile_pass() { // handle misleading angle brackets ::yew::html! {
::default()}>
}; ::yew::html! {
::default()} />
}; + + // test for https://github.com/yewstack/yew/issues/2810 + ::yew::html! {
} } fn main() {}