2012-04-05 11 views
2

Ich benutze Handlebars.js (oder zu versuchen) und sogar mit einem einfachen Beispiel, es ersetzt nicht die tatsächlichen Tags mit den Daten.Handlebars.js ersetzt keine Tags

Hier ist, was ich habe:

<script id="template" type="text/x-handlebars-template"> 
    <div>Test Template</div> 
    <p>Name: {{name}}</p> 
    </script> 

    <div id="template-preview"></div> 

<script> 
var source = $("#template").html(); 
var template = Handlebars.compile(source); 
var data = { name : 'first name'}; 
$("#template-preview").html(template(data)); 
</script> 

Ich bekomme keine Fehler und zeigt die Vorlage innerhalb Template-Vorschau, aber die {{name}} ist leer. Irgendwelche Ideen, wenn ich hier etwas verpasse?

Vielen Dank!

+0

Schöne neue mich Lenker aber könnte es sein, dass es einige gecached/vorkompilierte Vorlage zerrt? –

Antwort

0

Das funktioniert für mich (getestet mit Chrome). Welche Lenkerversion verwendest du?

<!doctype html> 
<head> 
</head> 
<body> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js"></script> 
    <script src="http://cloud.github.com/downloads/wycats/handlebars.js/handlebars-1.0.0.beta.6.js"></script> 
    <script id="template" type="text/x-handlebars-template"> 
    <div>Test Template</div> 
    <p>Name: {{name}}</p> 
    </script> 
    <div id="template-preview"></div> 

    <script> 
     var source = $("#template").html(); 
     var template = Handlebars.compile(source); 
     var data = { name : 'Michael'}; 
     $("#template-preview").html(template(data)); 
    </script> 
</body> 
</html> 
+0

Hm, stand alone, das funktioniert auch für mich. Ich benutze auch Head.js - vielleicht ist es damit verwandt – dzm

+0

Können Sie mehr Code zeigen, um zu sehen, wie genau Sie es verwenden? – lowik

+0

Ah - Ich denke es ist, weil ich Lenker in Lenker benutze - Mit Lenker in node.js, dann in einer Vorlage, ich habe den anderen Code. – dzm

Verwandte Themen