У меня есть это jsbin. Моя проблема заключается в том, что я пытаюсь вызвать action
:Как вызвать действие на контроллере из шаблона
<a {{action controllers.nodesIndex.destroyAllRecords this}}><i class="icon-remove-circle"></i><a/>
Но я получаю:
Uncaught Error: Nothing handled the event 'controllers.nodesIndex.destroyAllRecords'
(Вы можете вызвать, чтобы при нажатии на иконку icon-remove-circle
на верхнем правом углу, и проверка ошибка на консоли Js)
Но мой контроллер правильно настройки:
App.NodesIndexController = Ember.ArrayController.extend({
destroyAllRecords: function() {
console.log('destroyAllRecords called');
},
});
Что мне здесь не хватает?
' ...' должны делать трюк – Thomas
Спасибо. Ваш комментарий работал, просто * потому что * я ошибся, собрав jsbin. Я обновил jsbin, чтобы показать свою реальную реализацию: изменение заключается в том, что я пытаюсь вызвать действие в шаблоне 'nodes', а не в шаблоне' nodes/index', потому что это общая часть для всех узлов , Но из шаблона 'nodes' не найдено ни' controllers.nodesIndex.destroyAllRecords', ни 'destroyAllRecords'. Что я могу сделать, чтобы вызвать этот метод из шаблона 'nodes'? – dangonfast
Вы должны поставить 'needs: ['nodesIndex']' в контроллере yor 'nodes' – Hyder