2016-03-28 17 views

cevap

1

Böyle bir durumda, uygulama yaşam döngüsü boyunca değişkenleri depolamak için hizmet kullanırız. Başlatıcı, değişkenleri ve menü öğelerini hizmete sokar. Menü bileşenleri değişkenleri servisten alır.

Ayrıca, değişkeni hizmetten almak için bir yardımcı tanımlayabilirsiniz.

+0

Ah bu yüzden hizmete İşlevin ve şablonda satışa sunulacak in başlatıcısı yardımcısı tanımlamak? – stevenpslade

+0

Hem evet hem de hayır. Menü bileşeni, menü öğelerini servisten alır. menü bileşeninin şablonu bu menü öğeleri üzerinde yinelenir. Hepsi bu, bir yardıma ihtiyacımız yok. – ykaragol

0

Tam olarak aynı sorunla karşılaştım: htmlimde ayarlanmış bir dil değişkeni kullanmak zorunda kaldım ve bu dil değişkeni şablonumda kullanmam gerekiyordu. Bunu yapmak için bir yardımcı kullandım: yardımcıda, başlatıcınızda ayarlanan değişken pro'yu kullanabilirsiniz (bunu bildirmeniz şartıyla).

örnek:

function myInit(pro) { 
    var template = ...; 
    var data = ...; 
    Handlebars.registerHelper('ifProUser', function(item) { 
     if (pro) { 
     return "pro menu here"; 
     } else { 
     return ""; 
     } 
    } 
    var html = template(data); 
    ... 
} 

Sonra şablon içinde yalnızca kullanın:

{{ifProInit}}{{/ifProInit}} 
+0

Yani hbs şablonunda daha sonra {{#if ifProUser}} 'yapalım mı? – stevenpslade

+1

Yardımcısını {{ifProUser}} {{/ ifProUser}} kullanacaksınız –

İlgili konular