2014-09-10 8 views
5

मैं की तरह नीचेजेड

render: function(req,res){ 
    res.render('auth',{ 
     userData : req.session.user 
    }); 
    } 

मेरी auth.jade में कोड नीचे के रूप में है ग्राहक के लिए नोड से एक वस्तु पारित करने के लिए कोशिश कर रहा हूँ से AngularJS टेम्पलेट को कोई चीज दर्रा

script. 
    var data = !{JSON.stringify(userData)} 
    console.log(data) 
    window.top.location='/profile' 

इसलिए मैं AngularJS

app.config(['$routeProvider','$locationProvider', 
    function($routeProvider,$locationProvider) { 
    $routeProvider. 
     when('/profile', { 
     templateUrl: 'templates/profile.html', 
     controller: 'ProfileCtrl' 
     }) 

का उपयोग कर एक नया मार्ग जो मैं routeProvider में परिभाषित किया गया है करने के लिए आवेदन पुनः निर्देशित कर रहा हूँ तो है वहाँ एक जिस मार्ग से मैं उस मार्ग के लिए नियंत्रक में 'डेटा' ऑब्जेक्ट तक पहुंच सकता हूं?

उत्तर

7

आपके पास अपनी स्क्रिप्ट में ऐसा कर सकते हैं:

var data = !{JSON.stringify(userData)}; 
window.serverData= data; 

अपने app.js में के बाद, आप यह कर सकते हैं:

app.value('serverData', window.serverData); 

और अपने नियंत्रक में:

app.controller('controllerName', ['serverData', function(serverData){ 

console.log(serverData); 

}]); 

आप app var के बिना नियंत्रक में विंडो var तक पहुंच सकते हैं। लेकिन यह एक अच्छा अभ्यास है।