我正在处理AngularJS中一个关于控制器与$ scope和$ rootScope变量之间的函数可见性的简单问题。
为了澄清,我在我的几个控制器中有几个功能,我想在所有控制器中提供(为了代码清晰并避免重复功能< / em>的)。
我已经使用$ rootScope和其他功能的服务功能,但我找不到解决这种情况的正确方法。
这是一个例子,一个简单的功能来切换手风琴列表(来源:http://codepen.io/deinerson1/pen/gxnzj)
// Toggle groups
$scope.toggleGroup = function(group) {
if ($scope.isGroupShown(group)) {
$scope.shownGroup = null;
} else {
$scope.shownGroup = group;
}
};
$scope.isGroupShown = function(group) {
return $scope.shownGroup === group;
};
在这种情况下,如何使这个功能(使用$ scope )可用于所有可能想要使用它的控制器?
摘要:
在全球范围内提供功能的正确方法是什么,包括那些使用$ scope变量的功能?
此外,还有另一个例子,避免陷入简单的手风琴事情:
$scope.cancelModal = function() {
$ionicHistory.nextViewOptions({
disableBack: true
});
$ionicViewSwitcher.nextDirection('back'); // Go back effect
$state.go('app.main');
}