2016-04-05 9 views
0

Ich habe den folgenden Link in der routeProvider-Kette. Ich möchte die dynamische Variable im Pfad als Parameter für die Auflösungsfunktion referenzieren. Ist das möglich? Oder müsste ich wirklich $ route.current.params.code verwenden, wenn der Parameter direkt darüber referenziert wird? Und wenn Sie denken, ich sollte $ route verwenden, wie gebe ich es weiter? Kann ich das hier überhaupt machen?Angular Dynamic Path Parameter als Resolve Parameter

when('/subscribe-staff/:code', { 
    templateUrl: '/build/modules/subscribe-staff.html', 
    controller: 'SubscribeStaff', 
    controllerAs: 'sub', 
    resolve: { 
    invitation: function (InvitesService) { 
     return InvitesService.getStaffInvites(code) 
    } 
    } 
}). 

Antwort

0

Mein Hauptproblem bei dem Versuch, diese, um herauszufinden, war, wo in $ Strecke passieren, und auch ich denke, es ist seltsam, dass wir nicht den gleichen Variable Pfad verwenden können. Hoffentlich können neuere Versionen von eckigen das vereinfachen. Für alle, die das gleiche Problem haben, müssen Sie $ route hier nur als Parameter an Ihre Auflösungsfunktion übergeben und nicht an das tatsächliche $ routeProvider-Setup am Anfang der Datei. In der Tat, wenn Sie das tun, bin ich mir ziemlich sicher, dass es brechen wird.

resolve: { 
    invitation: function (InvitesService, $route) { 
    return InvitesService.getStaffInvites($route.current.params.code) 
    } 
}