Вы можете вернуть массив или фрагмент, содержащий оба.
Массив:
return [
menuItem('/signin', SIGNIN, false),
menuItem('/signup', SIGNUP, true)
];
Фрагмент:
return (
<React.Fragment>
{menuItem('/signin', SIGNIN, false)}
{menuItem('/signup', SIGNUP, true)}
</React.Fragment>
);
Другой способ использования фрагмента в современных версиях Вавилона:
return (
<>
{menuItem('/signin', SIGNIN, false)}
{menuItem('/signup', SIGNUP, true)}
</>
);
То, что вы не работали, потому что результатом оператора &&
является значение только один его операндов. Он оценивает свой левый операнд и, если это значение ложно, принимает это значение в качестве результата; в противном случае он оценивает свой правый операнд и принимает это значение в качестве результата. В вашем случае, поскольку menuItem
возвращает объект, это правда, поэтому второй вызов menuItem
был выполнен, и его результат был результатом выражения &&
.