diff --git a/leptos/src/lib.rs b/leptos/src/lib.rs index 15d027249..968309a9e 100644 --- a/leptos/src/lib.rs +++ b/leptos/src/lib.rs @@ -285,6 +285,21 @@ pub trait DynAttrs { impl DynAttrs for () {} +#[doc(hidden)] +pub trait DynBindings { + fn dyn_bindings>( + self, + _args: impl IntoIterator, + ) -> Self + where + Self: Sized, + { + self + } +} + +impl DynBindings for () {} + #[doc(hidden)] pub trait PropsOrNoPropsBuilder { type Builder; diff --git a/leptos_macro/src/component.rs b/leptos_macro/src/component.rs index 8ca8ca739..1dcc4675c 100644 --- a/leptos_macro/src/component.rs +++ b/leptos_macro/src/component.rs @@ -543,7 +543,7 @@ impl ToTokens for Model { } } - impl #impl_generics #props_name #generics #where_clause { + impl #impl_generics ::leptos::DynBindings for #props_name #generics #where_clause { fn dyn_bindings>(mut self, bindings: impl std::iter::IntoIterator) -> Self { for binding in bindings.into_iter() { let binding: ::leptos::leptos_dom::html::Binding = binding.into();