Я собираюсь опубликовать свой комментарий в качестве ответа.
Предыдущий комментарий:
Я полагаю, это зависит от вашего дизайна, AFAIK, это нормально в React Native при условии, что вы 'Вы используете оптимизированный способ рендеринга вашего списка (например, используя FlatList или аналогичный)
Согласно вашему следующему комментарию, я не думаю, что это чудовищный вообще.
Вот альтернатива.Однако для удобства чтения я бы предпочел фрагмент, который вы разместили в своем вопросе.
const ListItem = props => {
const items = [
{ key: 'body', backgroundColor: 'lightblue' },
{ key: 'source', backgroundColor: 'lightyellow' }
];
return (
<View style={styles.item}>
{
items.map(({ key, backgroundColor }) =>
<View style={{ backgroundColor }}>
<Text style={styles[key]}>
{ props[key] }
</Text>
</View>
)
}
</View>
)
}