Есть ли какая-то замена innerHTML в SVG / XML?
В HTML я могу создать простую систему шаблонов, предоставляя шаблон в виде строки, заменяя некоторые его части, а затем назначая его с помощьюinnerHTML
в какой-то контейнер.
var templ = '<span>{myText}</span>'
var newContent = templ.replace( '{myText}', someVariable );
document.querySelector( '#myContainer' ).innerHTML = newContent;
Таким образом, я могу воспользоваться HTML-парсером браузера и не использовать повторноdocument.createElement()
, Последнее может быть довольно громоздким, если шаблоны выходят за рамки нескольких элементов.
В SVG, однако, нет свойства для элементов, какinnerHTML
или дажеinnerSVG
в этом отношении.
Итак, мой вопрос:Есть ли что-нибудь, что я могу использовать в SVG ro, напоминает подход из приведенного выше примера, или я застрял сdocument.createElement()
(или соответственно какая-то библиотека, которая его использует)?
Как всегда с моими вопросами: предпочтительнее решения Vanilla JavaScript, но приветствуется любой указатель на библиотеку, предоставляющую решение.