2015-11-28 3 views
1

Я делаю аккорд в Angular, и для каждой кнопки вы хотите отправить значение с помощью конкретного аккорда. Мне интересно, какой лучший способ сделать это.Angular - Отправка значения нажатием кнопки

В моей index.html

<button class="chord-btn" ng-option="c" model="note" ng-click="ctrl.changeChord(note)">C major</button> 

И в моем controller.js ....

app.controller('ChordController', [function() { 

var self = this; 

self.changeChord = function(note) { 
    alert("Chord to be played is"+ note); 
}; 
}]); 

В настоящее время, когда я нажимаю кнопку, предупреждение говорит, что нота 'не определена' , Буду очень признателен за любые мысли, я новичок в Angular и подозреваю, что я делаю что-то глупое.

+0

Где находится «примечание», определенное в вашем контроллере? – Moin

+0

Какова ценность 'note'? – azad

+0

Откуда берется «примечание»? ngRepeat? Опубликовать полный HTML. – dfsq

ответ

0

Вам необходимо ввести $ scope в свой контроллер. $ scope - это клей между вашим представлением и вашим контроллером. Затем добавьте свою функцию в объект $ scope. Следующий код должен сделать трюк.

app.controller('ChordController', function($scope) { 

    $scope.changeChord = function(note) { 
     alert("Chord to be played is"+ note); 
    }; 
}); 
+0

OP, использующий контроллер, как синтаксис, ему не нужен '$ scope'. – dfsq

Смежные вопросы