I am trying to return an element with an inline switch. But I am getting only a empty <span> </span>. What am I doing wrong?
getRowTdForHeader: (header: string, entry: response) => {
return (<span>
{() => {
switch (header) {
case "Name": return entry.name;
case "Type": return entry.type;
default: return entry.name;
}
} }
</span>);
}
Result is a empty span and if I put a breakpoint at the return, it never goes into the switch statement at all. I'd like to keep it as a in-liner if possible. The switch works fine if I don't inline it btw.
()=>Second, even switch is not required. You can doentry[(header || 'name')]entry[(header || 'name')]?entryis an object and since you are returning property that is same word but different case,header.toLowercase()will give you property name. So if header isName,entry[header.toLowerCase()]will returnentry['name'].|| 'name'is the default value. If header is not defined, returnname. Also my apologies, I forgot.toLowerCase()entry[map[header]]