Die doc lässt mich denken, dass unten, sollte ich ng-click="ctrl.nextDay()"
wegen "GameController as ctrl"
verwenden. In diesem Fall passiert jedoch nichts und es werden keine Fehler gemeldet. Nur funktioniert ng-click="nextDay()"
."Wie" Angular ng-Controller funktioniert nicht wie erwartet
<div ng-controller="GameController as ctrl" >
<div class="panel panel-default">
<button type="button" class="btn btn-info" ng-click="nextDay()" >
<span class="glyphicon glyphicon-step-forward" aria-hidden="true">Next Day
</button>
</div>
Die Steuerung ist wie folgt definiert:
angular.module('FEModule')
.controller('GameController', ['$scope', '$http', '$fancyModal',
function($scope, $http, $fancyModal) {
console.log("GameController is instantiated! Yeah.");
$scope.nextDay = function() {
console.log("this is next day function!");
}
Was ist der Grund dafür?
Es hängt alles davon ab, was nextDay ist. Ist es eine Funktion, die an $ scope (nextDay()) oder an den Controller (ctrl.nextDay()) angehängt ist. Überprüfen Sie den Code des Controllers. Es ist wichtig. –
Woher kam 'theGame' auch? Sie folgen hier nicht den Konventionen, die für Ihren eigenen Controller festgelegt sind. – Makoto
Bereinigt den Code und Controller-Definition hinzugefügt. – Paul