import React from "react";
interface Item {
name: string;
}
let list: Item[] = [
{
name: "chris",
},
{
name: "james"
},
];
interface MapList<T> {
list: T[];
renderItem: (item: T) => React.ReactNode;
}
function MapList<T>({ list, renderItem }: MapList<T>) {
return <>{list.map(renderItem)}</>;
}
const App = () => {
return (
<>
<MapList<Item> list={list} renderItem={(item) => <li>{item.name}</li>} />
</>
);
};
export default App;