如何使用:具有函数作为变量的外部json来渲染胡子

时间:2016-06-25 16:36:53

标签: javascript jquery json ajax mustache

我想渲染mustache.js示例。但我想从外部文件中获取数据。 我将这些数据复制到" mydata.json" :

{
  "beatles": [
    { "firstName": "John", "lastName": "Lennon" },
    { "firstName": "Paul", "lastName": "McCartney" },
    { "firstName": "George", "lastName": "Harrison" },
    { "firstName": "Ringo", "lastName": "Starr" }
  ],
  "name": function () {
    return this.firstName + " " + this.lastName;
  }
}

我将模板复制到" template.html" :

{{#beatles}}
* {{name}}
{{/beatles}}

并通过以下代码呈现此文件:

$.get('template.html', function(template) 
{
    $.get('mydata.json',function(datas)
    {
        var rendered = Mustache.render(template, datas);
        $('#content').html(rendered);
    }
}

这些代码在我从数据文件中删除函数之前无效。

  • 我试过:不同的' dataType'在JQuery ajax请求中。
  • 我尝试过:将数据作为文本获取,然后将jQuery.parseJSON作为数据。
  • 我尝试过:函数脚本中的常规和LAMBDA语法。

但我无法解决这个问题。

1 个答案:

答案 0 :(得分:0)

我找到了答案。 AJAX请求数据类型必须是'script'才能以json和函数的形式接收数据。