2015-05-12 2 views
1

Я, следуя Railscats на ember.js и получил следующее сообщение об ошибке при попытке выполнить действие «AddEntry»ember.js - Ничто не обработал действия

Uncaught Error: Nothing handled the action 'addEntry'. If you did handle the action, this error can be caused by returning true from an action handler in a controller, causing the action to bubble.

Вот мой код:

application.handlebars

<div id="container"> 
    <h1>Raffler</h1> 
    {{input type="text" value=newEntryName action="addEntry"}} 
    <p>{{newEntryName}}</p> 
    <ul> 
     {{#each entries}} 
      <li>{{name}}</li> 
     {{/each}} 
    </ul> 
</div> 

application_controller .js.coffee

Raffler.ApplicationController = Ember.Controller.extend 
    entries: [] 

    addEntry: -> 
     @entries.pushObject name: @get('newEntryName') 
     @set('newEntryName', '') 
+0

Попробуйте использовать эту строку: 'Raffler.EntriesController = Ember.ArrayController.extend' –

ответ

4

В старых версиях ember.js, помощник действия используется любой метод в объекте контроллера в качестве действия. Но в новых версиях вы должны поместить любое действие в хэш-код actions. Таким образом обновить ваш контроллер к следующему:

Raffler.ApplicationController = Ember.Controller.extend 
    entries: [] 
    actions: 
    addEntry: -> 
     @entries.pushObject name: @get('newEntryName') 
     @set('newEntryName', '') 
+0

Работает как шарм. Спасибо. – seque90

+0

Спасибо, что lotttttt работал для меня. –