@baroman4ik

Как правильно вывести строку в jsx с содержимым regex?

Пробовал обернуть текст, подходящий под условие regex в тег и вывести его в но если использую react-html-parser выводит [object Object] когда передаю text.replace(/#([^ ]+)/g, ReactHtmlParser(#$1)).
Если передаю без ReactHtmlParser то возвращает span не как тег с содержимым regex, а как строку. Как вернуть span как тег с содержимым regex? Заранее спасибо)
Полный код выглябит так:
function TextArea({text, note, setText}) {
  return (
      <div className="note-container">
        <textarea 
          className="note-body" 
          onChange={e => {
            setText(e.target.value)
          }}
          placeholder='Choose this text...'
          rows={10}
          defaultValue={note.text || ''}
        > 
        </textarea>
        <p className="note-body">{text.replace(/#([^ ]+)/g, ReactHtmlParser(<span class="hashtag">#$1</span>)) || ''}</p>
      </div>
  )
  • Вопрос задан
  • 162 просмотра
Пригласить эксперта
Ответы на вопрос 1
@Everybody_Lies
сначала выполните замену в тексте, а потом эту строку передавайте в ф-ю ReactHtmlParser
Пример
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы