Ich experimentiere mit ES6-Klassen für meine Controller.Ereignisse in ES6-Ecksteuerungen behandeln
Früher, wenn ich zu einem rootScope Ereignisse mit ui-Router zu hören war, kann ich so etwas tun:
$rootScope.$on('stateChangeStart', function (event, toState, toParams, fromState, fromParams) {
console.log(toState)
}
und toState leicht zugänglich sein würde.
Mein ES6 Controller sieht derzeit wie folgt aus:
class NavbarController {
constructor ($rootScope) {
this.name = 'navbar'
this.$rootScope = $rootScope
this.$rootScope.$on('stateChangeStart', this.activeNav())
}
activeNav() {
console.log('This is called')
return (event, toState, toParams) => {
console.log('This is never called')
}
}
}
NavbarController.$inject = ['$rootScope']
export default NavbarController
Von Beiträge, die ich gelesen hatte, dachte ich, ich auf dem richtigen Weg war jedoch die Funktion, die ich Rückkehr bin heißt nicht, und ich kann nicht herausfinden, wie auf die Ereignisparameter zugegriffen wird.
Was ist der richtige Weg, um Ereignisse in ES6-Winkelreglern zu behandeln?
ist Ihr Code nicht gültig JS. Fixiere alle Syntaxprobleme zuerst (zu viele Klammern, fehlender Pfeil, etc. Ich würde auch Semikolons am Ende deiner Anweisungen hinzufügen. –
Entschuldigung für die Syntaxfehler, ich habe das Snippet gepackt. Sie sind jetzt korrekt. Ich folge Standardjs Daher die fehlenden Semikola –