moving list to it's own component

This commit is contained in:
2026-03-29 22:31:56 -04:00
parent 44959589f8
commit 5caa08e145
+16 -5
View File
@@ -53,6 +53,7 @@ pub fn MediaGrid(mut props: MediaGridProps) -> Element
} }
} }
}); });
let mut items = use_signal::<Vec<MediaModel>>(|| Vec::new());
use_memo(move || match media_result() use_memo(move || match media_result()
{ {
@@ -67,12 +68,9 @@ pub fn MediaGrid(mut props: MediaGridProps) -> Element
props.max_page.set(total_pages.max(1)); props.max_page.set(total_pages.max(1));
props.total_items.set(total_items.max(1)); props.total_items.set(total_items.max(1));
} }
items.set(result.items);
media_grid_display.set(rsx! { media_grid_display.set(rsx! {
{result.items.iter().map(|itm| rsx!{ MediaList { items }
MediaItem {
item: itm.clone()
}
})},
}); });
} }
Err(msg) => media_grid_display.set(rsx! { Err(msg) => media_grid_display.set(rsx! {
@@ -91,3 +89,16 @@ pub fn MediaGrid(mut props: MediaGridProps) -> Element
} }
} }
} }
#[component]
fn MediaList(items: Signal<Vec<MediaModel>>) -> Element
{
let vec = items.cloned();
rsx! {
{vec.iter().map(|itm| rsx!{
MediaItem {
item: itm.clone()
}
})}
}
}