Javascript-форум (https://javascript.ru/forum/)
-   Библиотеки/Тулкиты/Фреймворки (https://javascript.ru/forum/library-toolkit-framework/)
-   -   Библиотека для динамической генерации элементов DOM (https://javascript.ru/forum/library-toolkit-framework/68095-biblioteka-dlya-dinamicheskojj-generacii-ehlementov-dom.html)

lamer 26.03.2017 06:14

Библиотека для динамической генерации элементов DOM
 
Здравствуйте, очень часто требуется динамически генерировать большой объем HTML кода по средствам JS.
Уходит очень много времени и сил для создание кода.

Долго не мог уснуть и в голову пришла мысль, а может есть библиотека в которую ты вставляешь части HTML кода, кликаешь GO! и на выходе она отдает JS код который создает именно такой же HTML который ты ей показал ?

Поделись ссылками, мыслями, может кто то слышал о нечто подобном, поиск в гугле не дал результатов.

nerv_ 26.03.2017 10:06

шаблонизатор называется :)

https://github.com/SnakeskinTpl/Snakeskin
https://mozilla.github.io/nunjucks/

lamer 26.03.2017 14:40

nerv_, спасибо за интерес к теме.
Я имел введу не шаблонизаторы.
Попробую пояснить подробнее.
Есть множество готовых сайтов, которые время от времени требуется наполнять дополнительным контентом, как правило это HTML код со множеством вложенных блоков. Условия наполнения одно, нужно наполнять на чистом JS.
Конструкции типа этой совсем не хочется использовать:
document.getElementById("myAnchor").innerHTML = '<p><label for="options">Options</label><input type="text" name="options"></p>';


т.к. HTML код не 1 строка, а 500 и выше строк.
т.е. множество встроенных блоков и элементов.

Для меня проще написать это всё на HTML, потом этот написанный код вставить в либу и чтоб она выдала чистый JS код который я вставлю в сайт.

Таким образом мне не придется сидеть и писать код на чистом JS для генерации элементов DOM.

Вопрос только лишь в том есть в природе подобная библиотека ?
Которую не нужно подключать на сайт, ты ей скормил HTML, она выдала JS код который генерит этот HTML.

SV0L0CH 05.04.2017 13:59

Интересная задача, однако, хоть и не понятно где и по какой причине это могло понадобиться.
Моя рекомендация - использовать XSLT.
Во первых, это доступный вариант, работает в том числе в браузере.
Во вторых, можно использовать в командной строке, в том числе с утилитой make или подобными.
В третьих, это фактически тот же шаблонизатор и работа с ним должна быть привычной если есть опыт использования нескольких других шаблонизаторов.


Часовой пояс GMT +3, время: 01:45.