Переглянути джерело

Use error instead of panic for span location in rsx macro shorthand

Jonathan Kelley 1 рік тому
батько
коміт
8881b8a473
1 змінених файлів з 11 додано та 1 видалено
  1. 11 1
      packages/rsx/src/element.rs

+ 11 - 1
packages/rsx/src/element.rs

@@ -140,7 +140,17 @@ impl Parse for Element {
 
                 // If the shorthand field is children, these are actually children!
                 if name == "children" {
-                    panic!("children must be wrapped in braces");
+                    return Err(syn::Error::new(
+                        name.span(),
+                        format!(
+                            r#"Shorthand element children are not supported.
+To pass children into elements, wrap them in curly braces.
+Like so:
+    div {{ {{children}} }}
+
+"#,
+                        ),
+                    ));
                 };
 
                 let value = ElementAttrValue::Shorthand(name.clone());