2012-11-17 11 views
132

मैं डेटा लोड करने के लिए this तकनीक का उपयोग कर रहा हूं। तो मैं निम्नलिखित संकल्प समारोह बनाया है:

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

समस्याओं कि $routeParams.keyresolve समारोह निष्पादन के समय undefined है। क्या यह सही/बग है? मेरे द्वारा यह कैसे किया जा सकता है?

उत्तर

266

इसके बजाय आपको $route.current.params.key का उपयोग करने की आवश्यकता है। $routeParamsको के बाद अपडेट किया गया है, एक मार्ग बदल दिया गया है। तो आपका कोड उन पंक्तियों के साथ दिखना चाहिए:

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

धन्यवाद! मुझे $ रूट पैराम की आवश्यकता क्यों है? –

+2

मुझे लगता है कि http://docs.angularjs.org/api/ng.$route पैराम अच्छे एपीआई हैं जब एक मार्ग पहले से मेल खाता था और बदल गया था। लेकिन यह सच है कि यह थोड़ा उलझन में है ... –

+1

आप 'ui-राउटर 'का उपयोग करने वाले लोगों के लिए नियंत्रक –

संबंधित मुद्दे