У меня есть проект React TypeScript ASP.NET Core 2.0 MVC на сервере.
Пользователи могут писать сообщение на сайт в виде HTML, сообщения хранятся в базе а потом выводятся в компоненте React на сайте.
В сообщении могут быть HTML ссылки, например <a href="someurl.ru">ссылка</a>, когда ссылка внешняя для сайта, то тут всё хорошо, когда пользователь щелкает по ней переходит на внешний сайт, а мой сайт закрывается. Но когда ссылка внутреняя если на неё кликнуть, то она вызовет перерисовку всего React сайта, а мне нужно что бы она была обработана системой React Routing и перезагрузка всей страницы не происходила. То есть нужно как-то подготовить ссылки из введённого HTML либо на сервере либо на клиенте (или и там и там) в такой вид что бы переход шёл в системе маршрутизации React. Как это можно сделать?
У меня на сервере все сообщения санитаризируются, и парсятся, и я могу любой код вставить в любую ссылку в HTML теле сообщения. Так же так как я вывожу эти сообщения в клиентском скрипте то могу и с той стороны запускать какие-то подготовительные процедуры.
Конечно было бы классно просто преобразовать A к виду <Link to={'...'} /> но если просто в HTML коде сделать такую замену, то он и выведет не A а <Link to={'...'} /> в результирующий HTML, и не будет обработано React-ом.
Вот код вывода текста HTML в сообщении:
<div dangerouslySetInnerHTML={{ __html: x.text }}></div>
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости