2014-10-16 9 views
9

मैं सर्वर को अनुरोध भेजता हूं और प्रतिक्रिया प्राप्त होने के बाद सशर्त रूप से दूसरे पृष्ठ (कोणीय नहीं) पर रीडायरेक्ट करना चाहता हूं। इस प्रकार नेविगेशन एक वचन के then भाग के अंदर होता है।

मैंने कोशिश की:

$location.path(url) 

और

$window.location.href = url; 
$windo.location.reload(); 

कुछ भी नहीं काम करता है।

लेकिन अगर मैं setTimeout(navigate,0) पुनर्निर्देशन के साथ इन दो कॉलों में से किसी एक को लपेटता हूं।
पाचन चक्र के दौरान कोणीय गार्ड यूआरएल की तरह लगता है।

कोई भी वास्तव में क्या होता है यह समझाते हुए लिंक को स्पष्ट या साझा कर सकता है।

+1

शायद कुछ कोणीय डाइजेस्ट संबंधित चीज़। यह ठीक काम करना चाहिए मुझे लगता है: 'window.location.href = url;'। – dfsq

+1

@dfsq हां, यह काम करता है =) लेकिन यह "बल का प्रयोग करें, ल्यूक" =) –

+0

कूल, मदद करने में खुशी हुई! – dfsq

उत्तर

1

परिवर्तन करने के बाद, और वादा हैंडलर समाप्त होने से पहले, करने का प्रयास करें:

$scope.$$phase || $scope.$apply(); 

कि परिवर्तन पॉप्युलेट करना चाहिए।

+0

अच्छी तरह से, यह एक पाचन चक्र के अंदर निष्पादित किया जाता है। कई पुनरारंभ करने और CTRL + F5 के बाद यह $ window.location.href के सरल अपडेट के साथ काम कर रहा है। नहीं समझते कि क्यों। –

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