У меня есть эта модель:
var taskGroups =
[
{name:"Notepad", tasks:[]}
];
Моя цель — отобразить каждую группу задач в виде списка в следующем формате: {Name} {numOfTasks}
Если в группе задач есть пустая группа tasks[], она не должна отображаться.
Вот моя попытка в качестве jsfiddle: http://jsfiddle.net/ARS2E/
Вот мой шаблон:
<script id="tmpl" type="text/x-jsrender">
{{if tasks.length}}
<li class="tasklist-item">{{>name}} ({^{:tasks.length}})</li>
{{/if}}
</script>
Вот мой javascript:
var taskGroups = [{name:"Notepad", tasks:[]}];
var lastID=0;
$.templates({ tasklistTemplate: "#tmpl" });
$.link.tasklistTemplate("#tasklist", taskGroups);
$("#btnAdd").on("click", function()
{
$.observable(taskGroups[0].tasks).insert(0, {taskID:++lastID});
});
$("#btnRemove").on("click", function()
{
if(taskGroups[0].tasks.length)
{
$.observable(taskGroups[0].tasks).remove(0, 1);
}
});
Я не смог заставить это работать, и я не уверен, где я ошибаюсь. Буду очень признателен за любую помощь.