JavaScript: Как отформатировать str.replace с помощью ReactDOMServer.renderToString, используя захваченный элемент в качестве реквизита - PullRequest
0 голосов
/ 11 февраля 2020

Я пытаюсь применить это регулярное выражение

str.replace(/<L href=(.*?)>(.*?)<\/L>/g, ReactDOMServer.renderToString(<L href={$1}>$1</L>))

Но он не распознает $1, который находится в href={$1} (говорит, что он не определен), в то время как он появляется в второе место, и это показывает, что он правильно записан

Как я могу написать это?

* Таким образом, проблема не в регулярном выражении, а в том, как я могу использовать захваченную переменную в качестве формы параметра компонент


Может быть как то так?

($1, $2) => ReactDOMServer.renderToString(<L href={$1}>$1</L>)

1 Ответ

0 голосов
/ 11 февраля 2020

Можно обойти, не захватывая комы

str.replace(/<L href="(.*?)">(.*?)<\/L>/g, ReactDOMServer.renderToString(<L href="$1">$1</L>))

Но разве нет лучшего способа?

...