Старый трюк с размещением кода шаблона, который даже включает код атрибута, внутри тега <script>
с некоторыми другими type
работает.По какой-то причине, когда я использую более современный <template>
, все ломается.
Вот ссылка на пример
Пример кода :
HTML
<template id=employee-template data-template="employee">
checked
<input id="{{#Id}}{{FirstName}}{{LastName}}{{/Id}}-id" type="checkbox" {{#IsActive}}checked{{/IsActive}} />
</template>
<div id=target></div>
JavaScript
let savedEmployeeObject = {
"Id":16584,
"FirstName":"Victoria",
"LastName":"Gouveia",
"IsActive":true
}
console.log(document.querySelector("#employee-template").innerHTML)
document.querySelector("#target")
.innerHTML = Mustache.render(document.querySelector("#employee-template").innerHTML, savedEmployeeObject)
Мало того, что ничего не отображается в выходных данных, и есть ошибка, но кажется, что мой шаблон вырезан при попытке получить его содержимое HTML.Это выводит на консоль:
"
checked
<input id='{{#Id}}{{FirstName}}{{LastName}}{{/Id}}-id' type='checkbox' {{#isactive}}checked{{='' isactive}}=''>
"
Почему это происходит?