0

我正在开发一个任务应用程序在Backbone.js FUN和功能之一是分组视图。分组视图将显示根据其完成状态分组的任务。目前我可以从集合中构建分组对象。构建视图对我来说已经变得微不足道了。下面是我想怎么认为的样子Backbone.js任务应该如何分组视图看起来像

Completed Tasks 

- Water the Garden 

- Clean my closet 

Pending Tasks 

- Watch Whose line is it anyway 

的JSON后分组低于

{ 
    "true": [{ 
     "Name": "Finished Demo", 
     "Done": true, 
     "id": "4b3d8d3d-637c-fd5d-034b-b275b5f00e05" 
    }, { 
     "Name": "This is a new task", 
     "Done": true, 
     "id": "db5b379f-6f96-346d-4945-baf2d5ac0c76" 
    }, { 
     "Name": "Clean the closet", 
     "Done": true, 
     "id": "3b5091e5-a8df-845b-3c6d-2185187eb456" 
    }], 
    "false": [{ 
     "Name": "Edited another new task", 
     "Done": false, 
     "id": "0ee399b2-8fd9-84f2-735e-902d09c625a1" 
    }] 
} 

基于分组我想不出如何构建的UI模板的快照json以上。假设我使用underscore.js _.template作为模板目的。

  • 模板应该如何看待

回答

1

记住,truefalse 保留 关键字在Javascript。我建议你不要将它用作变量名称。

<ul> 
    <% if (finished) { %> 
     <% _.each(finished, function (task) { %> 
      <li id=<%= task.id %>> 
       <%= task.Name %> 
      <input type="checkbox" checked /> 
      </li> 
     <% }); %> 
    <% }; %> 
    <% if (unfinished) { %> 
     <% _.each(unfinished, function (task) { %> 
      <li id=<%= task.id %>> 
       <%= task.Name %> 
      <input type="checkbox" /> 
      </li> 
     <% }); %> 
    <% }; %> 
</ul> 

http://jsfiddle.net/theotheo/zJXW8/

+0

奏效。我也做得到' _.extend _.clone _.extend.toJSON App.Tasks.View.AppView.Backbone.View.extend.GroupBy f.event.dispatch f.event.add.h .handle.i'。当前一个视图被删除时。我用下面的代码'view.undelegateevents(); view.remove();' – Deeptechtons

+0

嗯......我认为你应该为这个问题创建一个单独的问题。你能否发布一些与之相关的代码? “undelegateevents”方法有什么作用? – theotheo

+0

没问题。这是僵尸问题之一。即使它已被清除,我也通过窗口对象引用了View实例。 – Deeptechtons

相关问题