const Default = ({title, component}) =>
<div className="missing">missing component for: {component}</div>;
const Component1 = ({title}) =>
<div className="first">{title}</div>;
const Component2 = ({title}) =>
<div className="second">{title}</div>;
const exampleData = [
{
title : 'first title',
component : 'component1',
},
{
title : 'second title',
component : 'component2',
},
{
title: 'Unknown Component',
component : 'someUnknownComponent',
}
];
const componentMap = {
component1 : Component1,
component2 : Component2,
default : Default,
}
{
exampleData.map( d => {
const Component = componentMap[ d.component ]
|| componentMap.default;
return <Component {...d} />;
} )
}