2013-07-20 1 views
0

예를 들어, 나는로드 HTML 템플릿에 필요한 사용하고, 그리고 난 동기 방식으로 다음을로드 할 : RequireJS : 동기 requrire의 텍스트 내용

var template_a = require(["text!template/a.html"], function(template) { return template; }); 
var template_b = require(["text!template/b.html"], function(template) { return template; }); 
var template_c = require(["text!template/c.html"], function(template) { return template; }); 

$("body").append(template_a); 
$("body").append(template_b); 
$("body").append(template_c); 

나는이 어떻게 할 수

? 감사!

+0

무엇 때문에 이것을 달성하려고합니까? 잠재적 이점은 무엇입니까? – kryger

답변

3

RequireJS는 본질적으로 비동기입니다. 그것을 극복하는 유일한 방법은 이와 비슷한 것을하는 것입니다.

templates = []; 

function append_template(template, templates) 
{ 
    templates.push(template); 

    if(templates.length == 3) 
    { 
     for(var i in templates) 
      $("body").append(templates[i]); 
    } 
} 

require(["text!template/a.html"], function(template) { 
    append_template(template, templates); 
}); 
require(["text!template/b.html"], function(template) { 
    append_template(template, templates); 
}); 
require(["text!template/c.html"], function(template) { 
    append_template(template, templates); 
}); 
+0

하지만 하나의 "템플리트 appender"모듈에서 모든 템플리트를 요구하는 것과 다르지 않습니다 (그러나 더 복잡합니다). – kryger

+0

@kryger 확실히 :)하지만 '무엇을 위해서입니까?' 다른 질문입니다. – twil