将Handlebars模板的值传递给Javascript?

时间:2016-12-23 12:02:45

标签: javascript json templates handlebars.js

我想将Handlebars模板中的对象传递给我的Javascript代码来解析它。解析后,我希望它显示在模板中。有可能做这样的事吗?

JSON

{users: [
    {name: "Frank", lastname: "Franklin", domain: "gmail"},
    {name: "Bob", lastname: "Brandy", domain: "yahoo"},
    {name: "Rob", lastname: "Rems", domain: "msn"}
]};

1。通过"用户"从模板到Javascript的对象,在Javascript中基于JSON输入构建新对象

Users.html

{{#each users}}
     <li>
       <!-- How to pass a single User here? -->
       <!-- {{email}} would be returned from Javascript as a new value -->
       <a href="{{{buildEmail user}}}" target="_blank">{{email}}</a>
     </li>
{{/each}}

2。在Javascript中解析用户,返回电子邮件对象

EmailParser.js

Handlebars.registerHelper('buildEmail',
    function(user, options) {
        var firstname = user.firstname;
        var lastname = user.lastname;
        var domain = user.domain;

        return firstname + "." + lastname + "@" + domain + ".com";
    });

我希望在我的HTML模板中为每个用户显示:firstname.lastname@domain.com(使用来自JSON的实际值)。

问题

问题是JSON属性如&#34; user.firstname&#34;和&#34; user.lastname&#34;当我尝试这样做时,在Javascript中是未知的。有没有办法将JSON从模板传递给Javascript,在那里解析它,并返回一个要显示的新对象?

0 个答案:

没有答案