Функция опции поиска - реагируйте на родной - PullRequest
0 голосов
/ 17 июня 2020

У меня небольшая путаница при включении функции в мое приложение React Native. TextInput для поиска и Flatlist с данными. Когда я что-то набираю в TextInput, Flatlist фильтрует и отображает / выделяет текст для поиска. Я набрал «объявление», как показано ниже. Я ограничил свой текст 3 строками. Щелкните стрелку, и мы сможем прочитать сообщение полностью.

enter image description here

Теперь требуется, чтобы когда я набирал «объявление» или любую строку поиска, весь текст должен отображаться (а не просто 3 строки).

Код: здесь, когда состояние "arrowClicked" истинно, сообщение расширяется, и можно увидеть все строки. При повторном щелчке по нему сообщение сворачивается. Состояние "значение" содержит строку поиска. теперь, когда "значение" не пусто, сообщение нужно развернуть.

              { arrowClicked === true ? 
              <Text>{value !== "" ? getHighlightedText(alert) : alert}</Text>
              :
              <Text numberOfLines={3}>{value !== "" ? getHighlightedText(alert) : alert}</Text>
              }
              .
              .
              .
              {
                arrowClicked === true ? 
                <Icon type='materialicons' name='arrow-drop-up' size={33} onPress={()=>{this.setFullLength()}}  />
                : 
                <Icon type='materialicons' name='arrow-drop-down' size={33} onPress={()=>{this.setFullLength()}}  />

               } 

Как мне подключить этот лог c ??? Помогите пожалуйста !!!

1 Ответ

2 голосов
/ 17 июня 2020

Если value - это строка поиска, вам необходимо установить другое свойство, например initSearch: true, когда выполняется поиск или при установке значения value, а затем добавить новое свойство в оператор if, например:

{ arrowClicked === true || initSearch ? 
    <Text>{value !== "" ? getHighlightedText(alert) : alert}</Text>
    :
    <Text numberOfLines={3}>{value !== "" ? getHighlightedText(alert) : alert}</Text>
 }
              .
              .
              .
 { arrowClicked === true || initSearch ? 
      <Icon type='materialicons' name='arrow-drop-up' size={33} onPress={()=>{this.setFullLength()}}  />
      : 
      <Icon type='materialicons' name='arrow-drop-down' size={33} onPress={()=>{this.setFullLength()}}  />

  } 

Когда вызывается сворачивание, установите initSearch в false.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...