pub trait ComponentFunction<Props, Marker = ()>: Clone + 'static {
// Required method
fn rebuild(&self, props: Props) -> Element;
// Provided method
fn id(&self) -> TypeId { ... }
}
Expand description
Any component that implements the ComponentFn
trait can be used as a component.
This trait is automatically implemented for functions that are in one of the following forms:
fn() -> Element
fn(props: Properties) -> Element
You can derive it automatically for any function with arguments that implement PartialEq with the #[component]
attribute:
#[component]
fn MyComponent(a: u32, b: u32) -> Element {
rsx! { "a: {a}, b: {b}" }
}
Required Methods§
Provided Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.