2012-04-17 54 views
0

我试图玩Ember.StateManager并得到以下问题。我有一个这样的事件处理程序的视图:Ember.ViewState和事件处理程序

App.TestView : Ember.View.extend({ 
    click: function(evt){ 
     console.log("hello"); 
    } 
}) 

当我追加的观点手动

Ember.$().ready(function(){ 
    var testView = App.TestView.create(); 
    testView.append(); 
)} 

click事件的作品。

但是当我使用的状态经理:

App.statechart = Ember.StateManager.create({ 

    start: Ember.ViewState.create({ 

     view: App.TestView; 

    )} 
)} 

click事件的作品不多。 我的代码有什么问题?

回答

1
从您的代码示例中的语法错误

除此之外,它的工作,看到http://jsfiddle.net/pangratz666/c3EY3/

App.TestView = Ember.View.extend({ 
    templateName: 'testView', 
    click: function(evt) { 
     console.log("hello"); 
    } 
}); 

App.statechart = Ember.StateManager.create({ 
    start: Ember.ViewState.create({ 
     view: App.TestView 
    }) 
});​ 

你使用哪种版本Ember.js的?您在Ember.StateView上指定视图类为view属性,自承诺bc4d813d2011-01-17,可用于v0.9.4)以来,支持此属性。以前你必须指定一个视图的具体实例。

+0

我使用的是烬0.9.6。我将我的代码从coffeescript翻译成纯JavaScript,并且工作正常:)可能是我做错了什么。 – jrabary 2012-04-17 12:31:56