react-quill, как установить переменную в теле

#javascript #node.js #reactjs #mongoose #mern

#javascript #node.js #reactjs #мангуст #мерн

Вопрос:

Я использую react-quill, чтобы позволить моему клиенту писать пользовательскую почту в текстовом редакторе. Но он хочет иметь возможность добавлять переменные типа {client.name} или {booking.date} .

Я попытался добавить строку шаблона, например 'Hello ${client.name} ${client.firstName}' , но я не получаю переменные, только текст.

Кто-нибудь знает, как я могу разрешить моему клиенту использовать переменную или if / else или любой код javascript?

Редактировать: чтобы избежать гнусных людей, я бы хотел использовать пользовательскую кнопку, которая показывает только доступные переменные, подобные этой: Пример текстового редактора

На данный момент я использую react-hook-form для отправки данных в мой API и отправки электронной почты с помощью nodemailer из серверной части. Вот мой внутренний код: внутренний код

Вот результат, который я получаю: почта, которую я получаю

Вот результат, который я хочу: результат, который я хочу

Комментарии:

1. Где вы хотите, чтобы произошла замена? Как вы обрабатываете текст после завершения с клиента?

2. Если нажать кнопку для отправки текста, вам просто нужно выполнить поиск и замену на основе вашей модели. Если вам нужны условные обозначения в текстовом редакторе, возможно, смоделируйте значение и поместите обработку условий в серверную часть. В противном случае вам, вероятно, потребуется реализовать какой-либо тип анализатора javascript в серверной части, однако это будет возможным вектором атаки для гнусных людей

3. Как вы отображали выбранные поля в react-quill таким образом? Я был бы признателен, если бы вы поделились кодом на стороне клиента. Я пытаюсь отобразить выбранные поля формы, такие как ‘Hello {{full_name}}’ на quill. (в моем случае достаточно отображать имена переменных, а не значение, а ключ, если это имеет смысл :))