2014-07-07 14 views
23

मेरे पास एक AngularJs ऐप है। मैं कुछ बच्चे के scopes के लिए नियंत्रकों का उपयोग करें। प्रत्येक नियंत्रक में मैं संबंधित चर-स्तरीय से संबंधित कई चर सेट कर सकता हूं। जब AngularJs नियंत्रक को तुरंत चालू करता है, तो एक कन्स्ट्रक्टर होता है जहां मैं अपने बच्चे-स्कोप चर के लिए डिफ़ॉल्ट मान सेट कर सकता हूं।कोणीय नियंत्रक विनाशक

क्या मेरे पास नियंत्रक "विनाशक" है? मुझे कैसे पता चलेगा कि एक नियंत्रक बंद हो रहा है और दायरा साफ किया जा रहा है ($ नष्ट समारोह द्वारा नष्ट)?

धन्यवाद!

function MyController($scope, ...) { 
    ... 
    $scope.$on("$destroy", function handler() { 
     // destruction code here 
    }); 
} 

संगत डॉक्स:

उत्तर

45

आप $destroyघटना, जैसे को सुनने के लिए है https://docs.angularjs.org/api/ng/type/$rootScope.Scope

+0

यह '$ scope' द्वारा उत्सर्जित होता है, तो हाँ भी आप के लिए उपयोग किया' $ स्कोप ', आप इसे सुन सकते हैं। अनिवार्य रूप से '$ स्कोप 'नष्ट हो गया है और इस घटना को उत्सर्जित करता है; नियंत्रक को इसके परिणामस्वरूप नष्ट कर दिया जाता है, इसलिए यह कुछ हद तक अप्रत्यक्ष है, लेकिन फिर भी स्थिर है। –

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