0

我有以下问题

数据:

var json = {'data': [{'id': '1', 'members': [{'name':'First member', 'age': '23'},{'name':'Second member', 'age': '31'}] }]}

JSON 是从我的脑海中写出来的,所以它可能是无效的,不是那么重要。

小胡子.tmpl

{{#data}}
{{#members}}
<script>myJsFunction( all_members_attributes_as_json )</script>
{{/members}}
{{/data}}

所以总的来说,我想将整个 mustache 数组传递给我的 JS 函数

4

1 回答 1

0

大约是这样的:

添加一个用于将您的成员映射到 JSON 字符串的函数:

_.each(json.data, function(el) {
    el.jsonMembers = function() {
        return _.map(this.members, function(member) {
            return JSON.stringify(member);
        });
    };
});

请注意,我在这里使用了_.each_.map...如果您不使用下划线,请替换为您最喜欢的迭代器或香草 for 循环。或者只使用下划线,因为它让生活更美好。

然后您将访问字符串化版本而不是普通版本:

{{#data}}
{{#jsonMembers}}
<script>myJsFunction({{{ . }}})</script>
{{/jsonMembers}}
{{/data}}
于 2012-05-30T16:38:50.473 回答