2017-01-09 82 views
0

使用$scope作爲AngularJS中的變量的缺點是什麼,在app.run()中共享控制器的$scope? 其實我這樣做是爲了使通用代碼在app.run()中被所有具有相同功能的控制器調用。

我使用的功能與

$rootScope.getUserInfo = function($scope){ 
    $scope.userinfo = '---------'; 
} 

其中$scope的是,我從各個控制器通過這樣的

$rootScope.getUserInfo($scope); 

回答

1

我不認爲有本質上有毛病變量傳遞一個範圍。人們在AngularJS服務中做了很多事情,並且它在內部也做了很多:您創建的控制器被傳遞給一個範圍。

不過,我會說這是沒有必要的在你的例子有getUserInfo依賴於一個範圍傳遞。爲什麼不返回用戶信息並讓調用者將其放在範圍內?這樣,你可以在你的應用程序中沒有範圍的部分使用它。

+0

感謝您的回覆 用戶信息只是一個例子,實際上我有300行函數,並且它們不返回任何內容。如果我通過範圍,我在控制器中使用的angularjs變量的值將被自動設置。 –

相關問題