19

Oto przykład szablonu JavaScript z demo single page długowieczne aplikacji Ben Nadel za AJAX zaczerpnięte z: [source]Kiedy używać silników szablonów JavaScript?

<script id="contact-list-item-template" type="application/template"> 

    <li class="contact clear-fix"> 

      <div class="summary"> 
        <a class="name">${name}</a> 
      </div> 

      <div class="actions"> 
        <a href="javascript:void(0)" class="more">more</a> &nbsp;|&nbsp; 
        <a href="#/contacts/edit/${id}" class="edit">edit</a> &nbsp;|&nbsp; 
        <a href="#/contacts/delete/${id}" class="delete">delete</a> 
      </div> 

      <dl class="details clear-fix"> 
        <dt> 
          name: 
        </dt> 
        <dd> 
          ${name} 
        </dd> 
        <dt> 
          phone: 
        </dt> 
        <dd> 
          ${phone} 
        </dd> 
        <dt> 
          email: 
        </dt> 
        <dd> 
          ${email} 
        </dd> 
      </dl> 

    </li> 

Chcę zapytać, co jest celem użyciu javascript silników szablonów, takich jak że? Czy to oszczędza przepustowość? Czy to tylko kwestia Separation of concerns? Czy pomoże to w walce z problemami z wyciekiem pamięci w przeglądarce?

Kiedy powinienem używać silnika szablonów i kiedy łatwiej jest przejść z nieprzetworzonymi odpowiedziami HTML AJAX?

Powiązane dyskusja:

JQuery templating engines

+2

chciałbym wiedzieć to zbyt: gdy używamy klienta boczną templating? – jrharshath

+0

@Jr: Zapoznaj się z moją odpowiedzią. – Tarik

Odpowiedz

39

Templating jest dobrym rozwiązaniem w kilku scenariuszach:

  • Ładowanie wszystkie dane z serwera, zwłaszcza w bogatej listy wyświetla
  • Dodawanie lub aktualizowanie nowych pozycji na listach
  • Wszędzie, gdzie potrzebujesz O Dodaj nowy kompleks treści strony
  • cokolwiek wymagającego klienta boczną renderowania HTML

Źródło: http://www.west-wind.com/Weblog/posts/509108.aspx

+0

Chciałbym móc dwukrotnie odpowiedzieć na twoją odpowiedź :) Dzięki, Aaron – ep3static

+0

Cieszę się, że mogę Ci pomóc :) Dzięki ... – Tarik

+1

"Wszystko, co wymaga renderowania HTML po stronie klienta". Czy (praktycznie) cały HTML nie wymaga renderowania? Czy masz na myśli, że kiedy javascript jest używany do dynamicznego renderowania rzeczy? – BVernon

Powiązane problemy