3

我有一个编译为 HTML 的 MJML 模板,我想将 JSON 文件中的变量加载到模板中。我是 HTML、JS 和 Handlebars 的新手,所以这里可能真的偏离了轨道。

我的 MJML 模板test.mjml看起来像:

<mjml>    
<mj-body>
<mj-raw><script type="text/javascript" src="handlebars-v4.7.3.js"></script></mj-raw>  
<mj-raw><script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script></mj-raw>
  <mj-section>
    <mj-text><mj-raw>
      <script id="test-template" type="text/x-handlebars-template">
        <div>
        <p>
        Hello my name is {{name}}.
        </p>
        </div>
      </script>      
    </mj-raw></mj-text>
  </mj-column>
</mj-section>

我有一个 JSON 文件data.json

{
 "name": "John",
 "height": "175cm",
 "occupation": "Teacher",
}

还有一个 JS 文件test.js

$(document).ready(function() {  
    var template = $('#test-template').html();

    var compiledTemplate = Handlebars.compile(template);
    $.getJSON('data.json', function (data) {
        var context = data;
        }
});

var html = compiledTemplate(context);

$(document.body).append(html);

有谁知道该怎么做/我做错了什么?

如果我用内联 JSON 替换 jQuery 的 getJSON 方法,它就可以工作。

4

0 回答 0