当View插入Collection视图时,单击事件不会触发

时间:2013-03-26 02:11:06

标签: ember.js

我正在尝试在运行时向我的页面添加几个按钮。创建按钮并将其推入containerView。请参阅下面的addButtons函数。

给定一个控制器:

RE.MenuController =  Em.ArrayController.extend


  addButtons: ->
    console.log "addButtons"
    container = Ember.ContainerView.create()
    container.append()

    prevButton = RE.ButtonView.create()
    container.pushObject(prevButton)

和观点:

RE.ButtonView = Em.View.extend
  classNames: 'menuLink'
  tagName: 'button'
  templateName: 'button'

  click: (e) ->
    alert 'button clicked'

单击按钮时,我从未看到预期的警报。为什么点击事件不会被触发?

按钮的html如下所示:

<button id="ember420" class="ember-view menuLink">TEST</button>

那里没有数据余烬行动。

我应该使用这种方法还是在模板中使用动作帮助器?

感谢,

马丁

1 个答案:

答案 0 :(得分:1)

Ember.View事件处理程序(在您的情况下,click函数)由Ember的EventDispatcher调用,它监听应用程序根元素并委托事件。事件调度程序仅由Ember.Application实例化。你在创建一个Application吗?如果没有,则永远不会发送事件。