2012-11-17 12 views
132

Sto utilizzando la tecnica this per caricare i dati. Così ho creato la seguente funzione di determinazione:

NoteController.resolve = { 
    note: function($routeParams, Note) { 
     return Note.get($routeParams.key); 
    } 
} 

problemi è che $routeParams.key è undefined al momento della resolve esecuzione della funzione. E 'corretto/bug? Come posso ripararlo?

risposta

266

È necessario utilizzare $route.current.params.key. $routeParams viene aggiornato solo dopo il un percorso viene modificato. Quindi il tuo codice dovrebbe guardare lungo le linee:

NoteController.resolve = { 
    note: function($route, Note) { 
     return Note.get($route.current.params.key); 
    } 
} 
+7

Grazie! Perché ho bisogno di $ routeParams allora? –

+2

Immagino che http://docs.angularjs.org/api/ng.$routeParams sia una buona API quando un percorso è già stato abbinato e modificato. Ma è vero che è un po 'di confusione ... –

+1

Puoi usare '$ routeParams' all'interno del controller –

Problemi correlati