Преобразование текста в HTML в Node Js

Я использую nodemailer для отправки почты с сервера узлов. Я получаю содержимое для этой почты с сервера MSSQL SQL, который отформатирован в простом текстовом формате, что означает, что в нем есть символы новой строки, однако при отправке его с помощью nodemailer символы новой строки отсутствуют, и весь текст выглядит испорченным. Другой способ - вставить html-теги для разрыва строки в простом тексте и отправить это работает нормально. Но слишком много ручной работы связано с тем, что я ищу библиотеку или утилиту, которая может конвертировать простой текст в HTML, который я могу отправить по почте.

Есть ли какой-либо документ для этого требования или способ сделать это автоматически?

3 ответа

Решение

Это обернет части, которые разделены более чем одной новой строкой в ​​абзацах (<p>...</p>) и вставьте разрывы (<br>), где есть только одна новая строка.

template = '<p>' + template.replace(/\n{2,}/g, "</p><p>").replace(/\n/g, "<br>") + '</p>';

Так, например, это займет это:

Title

First line.
Second line.

Footer

И преобразовать это в это:

<p>Title</p><p>First line.<br>Second line.</p><p>Footer</p>

Самое простое решение - вы можете заменить символы новой строки на <br>,

Пытаться

text.split('\n').join('\n<br>\n')

тогда вы сделали.

Хорошо, наконец, этот фрагмент кода работал для меня -

template = template.replace(/\n/gi, "</p></br/>")
template = template.replace(/<\/p>/gi, "</p><p></br/>")

Это было много ударов и проб, но в итоге это сработало.

Другие вопросы по тегам