Backbone.js+;handlebar.js-{{{#each}}而不是模型视图?

Backbone.js+;handlebar.js-{{{#each}}而不是模型视图?,backbone.js,handlebars.js,Backbone.js,Handlebars.js,我有一个名为Projects的集合,其中包含几个Project类型的模型。当我想列出所有项目时,我使用ListProjectsView。它的render函数为集合中的每个项目生成一个ProjectView,从而可以通过将事件绑定到其名称来删除单个项目 但是,现在我想使用把手来创建模板。使用把手,可以更轻松地显示所有集合模型,使用每个辅助对象,如下所示: <ul> {{#each projects}} <li>{{this.name}}</li> {

我有一个名为
Projects
的集合,其中包含几个
Project
类型的模型。当我想列出所有项目时,我使用
ListProjectsView
。它的
render
函数为集合中的每个项目生成一个
ProjectView
,从而可以通过将事件绑定到其名称来删除单个项目

但是,现在我想使用把手来创建模板。使用把手,可以更轻松地显示所有集合模型,使用
每个
辅助对象,如下所示:

<ul>
  {{#each projects}}
  <li>{{this.name}}</li>
  {{/each}}
</ul> 
    {{{#每个项目}
  • {{this.name}}
  • {{/每个}}
这很好,但现在我想知道如何删除一个项目,因为我不再使用
ProjectView
。我是否需要向每个
  • 添加
    id
    ,以便绑定事件?或者我必须使用
    ProjectView
    来执行此操作吗


    提前感谢。

    这里的逻辑必须通过ListProjectsView运行。一种方法是按照您所说的做,将
    数据id
    附加到每个
    li
    ,然后在事件处理程序中获取目标

    deleteProjectHandler : function(evt){
        var $target = $(evt.target), id = $target.data('id');
    
        this.deleteProject(id);
    }
    

    或者类似的东西。

    在DOM中拥有对象的数据库id是一种好的做法吗?我不明白为什么不。它也可以是用户或任何查看DOM的人的任意ID