Próbuję napisać funkcję, która da mi skompilowany szablon kierownicy (Mam wszystkie moje szablony w osobnych plikach), używając wywołania ajax, aby uzyskać szablon i skompilować go do użycia, ale potrzebuję używać obietnicy, więc mogę jej użyć.ładowanie szablonu kierownicy asynchronicznie
function getTemplate(name){
$.get('/'+name+'.hbs').success(function(src){
var template = Handlebars.compile(src);
//can't return the template here.
});
}
Jak mogę to zrobić z obietnicami, więc mogę zrobić coś takiego:
$("a").click(function(e){
getTemplate('form').done(function(template){
$("body").append(template({
name: "My Name"
})
);
});
});
prawdopodobnie związane: http://stackoverflow.com/questions/133310/how-can-i-get-jquery-to-perform-a-synchronous- raczej niż asynchroniczny-ajax-re – ubik
@PedroFerreira 'async: false' jest przestarzałe i jest okropnym rozwiązaniem – charlietfl
@charlietfl Tak, zgadzam się. Jednak w niektórych przypadkach może to być interesujące jako opcja. – ubik