2017-08-26 6 views
0

ハンドルバーのコンパイル済みテンプレートに変数を渡そうとしていますが、コンソールに正しいオブジェクトが記録されていても正しい値ではなく空白が表示されます。私は何らかの愚かなミスをしていると思いますが、私はたくさん試してみて、正しい方法を見つけることができませんでした。コンパイル済みのハンドルバーテンプレート(expressjs)に変数を渡す

私のスクリプトファイル:

<script> 

$(document).ready(function(){ 

    var textTemplate = $("#text-template").html(); 
    var compiledTextTemplate = Handlebars.compile(textTemplate); 

    $('#getText').click(function (e) { 
     e.preventDefault(); 

     function successCallback(responseObj){ 
      console.log(responseObj); // I get the right object here 
     $("#target").html(compiledTextTemplate(responseObj)); 
     }; 

     $.ajax({ 
     url: "https://stackoverflow.com/users/user/get", 
     type: "get", 
     success: function(response){ 
       successCallback(response); 
      } 
     }); 
    }); 
}); 

</script> 

マイビュー:私はボタンをクリックすると

<div id="target"> 

</div> 

<input id="getText" type="button" value="Get Text"> 

<script id="text-template" type="text/x-handlebars-template"> 

    <div> 
     Your text is here >>> {{text}} 
    </div> 

</script> 

が、私は変数に空白を得るが、コンソールログこのオブジェクト:

Object 
done: false 
text: "Testing your text 1." 
__v: 0 
_id:"599cb206d86e536924a6cce9" 
__proto__: Object 

答えて

0

私は値の前にバックスラッシュを入れるだけで解決しました:

\{{text}} 
関連する問題