Gidon şablonlarını önceden derlemek istiyorum, ancak bunun geliştirme modunda nasıl çalıştığından emin değilim.RequireJS ile Gidonlarda önceden derlenmiş şablonlar nasıl kullanılır?
Genel uygulama, Handlebars şablon dosyalarındaki değişiklikleri sürekli olarak izlemek için çalışan Guard gibi bazı arka plan işlemlerine sahip midir?
Şablonları çekmek için RequireJS kullanıyorum; örneğin: şablonları precompiled kez
define(['jquery', 'handlebars', 'text!templates/my_template'], function($, Handlebars, myTemplate) {
// ...
var data = {"some": "data", "some_more": "data"};
var templateFn = Handlebars.compile(myTemplate);
$('#target').append(templateFn(data));
// ...
});
Yani anlıyorum kimse bu yapacağını:
define(['jquery', 'handlebars'], function($, Handlebars) {
// ...
var data = {"some": "data", "some_more": "data"};
var template = Handlebars.templates['my_template'];
$('#target').append(template(data));
// ...
});
Not ikinci kod parçacığının hakkında aşağıdaki:
- RequireJS modülü hayır şablonda daha uzun çeker.
- Handlebars.compile() artık kullanılmamaktadır.
Genellikle, şablon dosyalarında dosya sistemi düzeyinde değişiklikler olduğunda şablonlarımın derlenmesini sağlamak için genellikle Guard'ı çalıştırır mıyım?
Temelde sorum, geliştiricilerin bunu yapması niyeti midir?
if (development) {
compile templates
}
else {
use precompiled templates
}
Ayrıca Rails kullanıyorum, belki de sass ray gibi bazı kara büyü var.
Evet! Bir iş arkadaşım bu soruyu gönderdikten sonra gereksinim-gidon-eklenti olduğunu ve mükemmel! Hatta i18n desteği var, bu da onu daha da harika kılıyor. Test ettim ve ilan edildiği gibi çalışıyor. Geliştirme modundan üretime kod değişikliği yapılmasını gerektirmez ve derleme işlemi için yapılabilen derleme için r.js'yi kullanır. Şablonlar yerleşik dosyaya çizilir.Üretimde değişmesi gereken her şey, require.js + data-main ... içeren komut dosyası etiketidir ve varlık yöneticiniz tarafından ele alınabilir. –
Son sürüm itibariyle i18n işlevselliği kaldırılmıştır. – magiccrafter