Я хочу отобразить пример mustache.js. но я хочу получить данные из внешнего файла. скопировать эти данные в "mydata.json":Как визуализировать усы, используя: внешний 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» в запросе ajax JQuery.
- Я попытался: получить данные как текст, а затем jQuery.parseJSON, что данные.
- Я пробовал: обычный и синтаксис LAMBDA в скриптах функций.
, но я не могу решить эту проблему.
Это недействительно json. В json нет функций или 'this'. Чтобы проверить ... поставьте его через онлайн-валидатор – charlietfl
@charlietfl Я знаю. но я хочу использовать внешние данные и внешний шаблон вместе в mustache.js – hoceyn
Ну, вам нужен другой подход. Можно использовать свойства объекта для перехода к функции в js. В верхней части моей головы что-то вроде '" name ": {" comb ": [" firstName "," "," lastName "]}'. затем напишите функцию парсера на основе этих свойств – charlietfl