#javascript #react-native #expo
Вопрос:
Я хочу показать компоненты, когда выбрана одна из трех категорий продуктов.
Это не работает.
{ step === 2 amp;amp; (product.category.category_name === 'clothing') || (product.category.category_name === 'accessoires') || (product.category.category_name === 'shoes') amp;amp; return (<View><Text>Hello</Text></View> ) }
Если одежда, аксессуары или обувь существуют, я хочу показать компонент. Это не работает, почему ? Если я сниму все, кроме одежды, тогда это сработает.
Комментарии:
1. Смешивание
amp;amp;
и||
без надлежащего()
использования не является хорошей практикой, и это, скорее всего, приведет к путанице и ошибкам.
Ответ №1:
Я думаю, вам следует лучше связать свои условия amp;amp;
и ||
.
Попробуйте этот код:
if (step === 2)
{
if (product.category.category_name === 'clothing' ||
product.category.category_name === 'accessoires' ||
product.category.category_name === 'shoes' )
{
return (<View><Text>Hello</Text></View> )
}
}
Комментарии:
1. Даже лучший ответ: Создайте массив со значением возможной строки и измените условные обозначения следующим образом: const arrayItems = [‘одежда’,’аксессуары’,’обувь’,’предмет3′,’предмет4′], Затем, если (шаг === 2 amp;amp; arrayItems.включает(product.category.category_name.toLowerCase ())) { возврат (<Вид><Вид><Текст>Привет<Текст></Текст></Текст></Вид> ) }