1

Я использую jQuery 1.9+, и я хочу использовать jsRender вместо шаблона jQuery, поскольку он устарел и не может использоваться в моем приложении.Использование jsRender вместо плагина шаблона jquery

Я видел пару примеров на https://github.com/BorisMoore/jsrender, особенно в первом примере. Его код находится в html-файле, и он используется html-файлом, но я хочу сделать это в отдельном файле javascript. Я хочу сделать это, потому что у меня довольно большое приложение, и я храню функцию jquery/javascript внутри js-файла.

Так что я хотел бы изменить этот код:

<script id="movieTemplate" type="text/x-jsrender"> 
     <div> 
       {{:#index+1}}: <b>{{>name}}</b> ({{>releaseYear}}) 
     </div> 
</script> 

<div id="movieList"></div> 

<script type="text/javascript"> 

     var movies = [ 
       { name: "The Red Violin", releaseYear: "1998" }, 
       { name: "Eyes Wide Shut", releaseYear: "1999" }, 
       { name: "The Inheritance", releaseYear: "1976" } 
     ]; 


     $("#movieList").html(
       $("#movieTemplate").render(movies) 
     ); 

</script> 

Как я должен изменить этот код, чтобы использовать его в файле JS? Или есть ли какой-либо механизм шаблонов, который я мог бы использовать вместо плагина шаблона jQuery?

Спасибо за помощь!

ответ

2

Шаблоны могут быть скомпилированы либо из строк, либо из блоков сценариев в файлах HTML.

См Registering templates: $.templates() - например, образец, который использует:

var myTmpl = $.templates("<label>Name:</label> {{:name}}"); 

var person = {name: "Robert"}; 

var html = myTmpl.render(person); 

$("#peopleList").html(html); 

Смотри также другие примеры на сайте, такие как:

Смежные вопросы