23
我有一個AngularJs應用程序。我爲一些子範圍使用控制器。在每個控制器中,我可以設置許多屬於相應子範圍的變量。當AngularJs實例化一個控制器時,有一個構造函數可以爲我的子範圍變量設置一個默認值。Angularjs控制器析構函數
我有控制器「析構函數」嗎?如何知道控制器何時關閉以及作用域是否正在清理(由$ destroy函數銷燬)?
謝謝!
我有一個AngularJs應用程序。我爲一些子範圍使用控制器。在每個控制器中,我可以設置許多屬於相應子範圍的變量。當AngularJs實例化一個控制器時,有一個構造函數可以爲我的子範圍變量設置一個默認值。Angularjs控制器析構函數
我有控制器「析構函數」嗎?如何知道控制器何時關閉以及作用域是否正在清理(由$ destroy函數銷燬)?
謝謝!
你必須聽$destroy
事件,如:
function MyController($scope, ...) {
...
$scope.$on("$destroy", function handler() {
// destruction code here
});
}
相關的文檔:https://docs.angularjs.org/api/ng/type/$rootScope.Scope
這是由'$ scope'發出的,所以是無論你有機會獲得' $ scope',你可以聽它。本質上'$ scope'被銷燬並且發出這個事件;控制器因此而遭到破壞,因此它有些間接但穩定。 –