2012-02-27 20 views

cevap

23

Ember.TEMPLATES numaralı telefondan yeni şablonları kaydedebilirsiniz. Daha sonra görüşlere açık olacaklar.

benim kodundan bir alıntı (jQuery Ajax işleyici): bu kadar

success: function(data) { 
    $(data).filter('script[type="text/x-handlebars"]').each(function() { 
    templateName = $(this).attr('data-template-name'); 
    Ember.TEMPLATES[templateName] = Ember.Handlebars.compile($(this).html()); 
    }); 
} 

.

+1

Mike kullanarak kolayca yüklenebilir metin dosyasına handlerbar şablonu derleyecek iyileştirici ... Eğer daha büyük bir paketin içine bu kodu sarma misin yaşam döngüsü? Harici şablonu nasıl saklıyorsunuz? Dosya türü nedir? Bir get ya da getJSON ile mi yüklüyorsunuz? – commadelimited

+0

Şablon içeriğini, normal standart bir sayfa yanıtına ulaşacaklarından, HTML varlıklarını içeren bir "get" çağrısının sonuçlarından alıyorum. –

+0

Bu benim [dünya] tasarruf çözümüm :) Thx! –

7
Ben de aynı şeyi arıyoruz ve

kredi altında snippet'iyle bir oyun var üzereyim edildi

: Ben yüklemek için metin eklentisi ile birlikte requirejs kullanıyorum https://gist.github.com/2165681

<script> 
/* 
* Loads a handlebars.js template at a given URL. Takes an optional name, in which  case, 
* the template is added and is reference-able via templateName. 
*/ 
function loadTemplate(url, name, callback) { 
    var contents = $.get(url, function(templateText) { 
    var compiledTemplate = Ember.Handlebars.compile(templateText); 
    if (name) { 
     Ember.TEMPLATES[name] = compiledTemplate 
    } else { 
     Ember.View.create({ template: compiledTemplate }).append(); 
    } 
    if (callback) { 
     callback(); 
    } 
    }); 
} 
</script> 
+0

İlginç, gerçekten. Tek bir şablon yüklemek için bir tür ilkeldir. Önceki çözümüm, herhangi bir sayıda şablon yüklemesine izin verir * (ihtiyacım için daha uygun) *. –

+0

Anladım. Aslında HTML dosyasından biraz gürültü almak ve çok fazla istek oluşturmamak için daha çok bir çok şablonlu 'içerme' dosyası gibi bir fikrim var. İyi arama – joevallender

1

github borismus tutamaç şablonları dinamik olarak. Gördüğümüz böylece

r.js requirejs hatta ajax

İlgili konular