Javascript 从特定元素或视图触发的listenTo主干事件

Javascript 从特定元素或视图触发的listenTo主干事件,javascript,events,backbone.js,Javascript,Events,Backbone.js,就像主干视图中的事件哈希一样,我们使用选择器指定事件, 例如:- events: { "click .icon": "open", "click .button.edit": "openEditDialog", "click .button.delete": "destroy" } 如何使用listenTo实现这一点 PS:我有多个组件(如按钮、复选框),我有一个UI,允许将侦听器绑定到DOM中的那些组件(允许组件交互)。他们处理和触发了c

就像主干视图中的事件哈希一样,我们使用选择器指定事件, 例如:-

  events: {
    "click .icon":          "open",
    "click .button.edit":   "openEditDialog",
    "click .button.delete": "destroy"
  }
如何使用listenTo实现这一点

PS:我有多个组件(如按钮、复选框),我有一个UI,允许将侦听器绑定到DOM中的那些组件(允许组件交互)。他们处理和触发了click、mouseenter等默认javascript事件,比如click和双击:

Events.trigger('click',data); 


但是我只想将侦听器绑定到特定组件,禁止接收者侦听所有现有dom组件的mouseenter,因为任何组件的mouseenter都会导致Events.trigger('mouseenter',data)。

我认为您混淆了主干中的dom事件。Events——它们是不同的

事件哈希仅适用于主干.View,并引用可以绑定到视图中的事件处理程序方法的DOM事件


listenTo()
是Backbone.Events中的一种方法,可应用于任何混合在Backbone.Events中的对象。
listenTo()
方法中的第一个参数应该是一个混合了主干.Events的对象。

我认为您混淆了主干.Events中的DOM事件——它们是不同的

事件哈希仅适用于主干.View,并引用可以绑定到视图中的事件处理程序方法的DOM事件


listenTo()
是Backbone.Events中的一种方法,可应用于任何混合在Backbone.Events中的对象。
listenTo()
方法中的第一个参数应该是一个混合了主干.Events的对象。

那么,我应该如何将事件侦听器(主干事件侦听器)绑定为仅侦听视图的特定实例呢。我对每个实例都有唯一的id,但我不想在接收端使用if循环来根据id过滤触发程序。使用if循环似乎是不正确的或某种硬编码的方式。主干事件可以携带有效负载。因此,如果视图实例有一个viewId(例如),它可能会触发一个事件,事件负载包含viewId。从侦听器的角度来看,事件处理程序将接收此有效负载作为参数,因此在决定采取适当的操作之前,将能够检查viewId的值。那么,如何将事件侦听器(主干事件侦听器)绑定到仅侦听视图的特定实例。我对每个实例都有唯一的id,但我不想在接收端使用if循环来根据id过滤触发程序。使用if循环似乎是不正确的或某种硬编码的方式。主干事件可以携带有效负载。因此,如果视图实例有一个viewId(例如),它可能会触发一个事件,事件负载包含viewId。从侦听器的角度来看,事件处理程序将接收此有效负载作为参数,因此在决定采取适当的操作之前,将能够检查viewId的值。
Events.trigger('click',data); 
Events.trigger('dblClick',data);