Рендеринг помощников руля в jQuery

Я пытаюсь добавить фрагмент в свой основной шаблон (руль) с помощью jquery

var appendToDiv = function(data){
   return `
       <div class='some class'>
          {{{formatDate ${data.created_at} 'MMM DD YYYY'}}}
        </div>
    `
}

где formatDate - помощник руля.

$('#content').append(appendToDiv(data))

проблема здесь в том, что помощник по рулю не компилируется. надеюсь, вопрос достаточно ясен. любая помощь будет принята с благодарностью. заранее спасибо

Вы имеете в виду, что функция возвращает усы в виде текста? Вам определенно нужно вызвать механизм шаблонов перед добавлением html-текста.

Artem 28.08.2018 18:11

Вы используете руль спереди или сзади?

Janith 28.08.2018 18:13

рули в интерфейсе

lacasera 28.08.2018 18:14

@Artem, функция должна возвращать строку, которую я могу добавить в div в шаблоне. <div class='someclass'>May 02 2018 </div>

lacasera 28.08.2018 18:19

@lacasera да, я понимаю. Но вызывает ли он шаблонизатор руля?

Artem 28.08.2018 18:25

@Artem нет, как я могу это сделать в jQuery?

lacasera 28.08.2018 18:27

@lacasera после получения строки и перед ее вставкой в ​​DOM вам нужно вызвать шаблонизатор, например Handlebars.compile(string)(context);. Так же, как это был обычный метод рендеринга HTML на сервере.

Artem 28.08.2018 18:30
Как конвертировать HTML в PDF с помощью jsPDF
Как конвертировать HTML в PDF с помощью jsPDF
В этой статье мы рассмотрим, как конвертировать HTML в PDF с помощью jsPDF. Здесь мы узнаем, как конвертировать HTML в PDF с помощью javascript.
0
7
190
1

Ответы 1

Вот как я, наконец, решил это сделать.

в основном файле шаблона, index.handlebars, я создал партиал вроде этого

<div id='content'></div>

<script id = "template" type = "text/x-handlebars-template">
    <div class = "someclass">
       {{formatDate mydate 'MM DD YYYY'}}
    </div>
</script>

в файле js,

var template = document.getElementById('template')
var view = Handlebars.compile(template)
var templateToDisplay = view(mydate)
$('#content').append(templateToDisplay)

Надеюсь, кто-то еще сочтет это полезным.

Другие вопросы по теме