Как иметь эффект многоточия на текст
У меня длинный текст в мое приложение и мне нужно обрезать его и добавить три точки в конце.
Как я могу это сделать в React Native Text element?
спасибо
4 ответов
использовать numberOfLines
https://rnplay.org/plays/ImmKkA/edit
или если вы знаете или можете вычислить максимальное количество символов в строке, подстрока JS может быть использован.
<Text>{ ((mytextvar).length > maxlimit) ? 
    (((mytextvar).substring(0,maxlimit-3)) + '...') : 
    mytextvar }
</Text>
использовать numberOfLines на Text компоненты:
<Text numberOfLines={1}>long long long long text<Text>
будет:
long long long…
(предполагая, что у вас есть контейнер короткой ширины.)
использовать ellipsizeMode параметр для перемещения многоточия в head или middle. tail значение по умолчанию.
<Text numberOfLines={1} ellipsizeMode='head'}>long long long long text<Text>
будет:
…long long text
вы можете использовать ellipsizeMode и numberOfLines. е.г
<Text ellipsizeMode='tail' numberOfLines={2}>
  This very long text should be truncated with dots in the beginning.
</Text>
const styles = theme => ({
 contentClass:{
    overflow: 'hidden',
    textOverflow: 'ellipsis',
    display: '-webkit-box',
    WebkitLineClamp:1,
    WebkitBoxOrient:'vertical'
 }   
})render () {
  return(
    <div className={classes.contentClass}>
      {'content'}
    </div>
  )
}