Angular的新人请原谅我。你将如何在“夜间模式”的基础上完成一些事情。你可以在两个CSS状态之间切换,然后在所有视图中表示?
以例如:
查看1:
<ion-view>
<ion-nav-bar></ion-nav-bar>
<ion-content>
<ion-toggle toggle-class="toggle-positive" ng-click="activeButton();">Night Mode</ion-toggle>
</ion-content>
</ion-view>
观看2:
<ion-view>
<ion-nav-bar></ion-nav-bar>
<ion-content>
<div ng-class="'active' : isActive">Change Me!</div>
</ion-content>
</ion-view>
JS:
classApp.controller('classCtrl', function ($scope) {
$scope.isActive = false;
$scope.activeButton = function() {
$scope.isActive = !$scope.isActive;
}
});
CSS:
.active {
background: red;
}
这并不自然。只有在被更改的元素位于同一视图中时才会这样做,但是如果我想在一个视图中更改另一个元素的CSS,该怎么办呢?即使他们使用相同的控制器,它似乎并不重要。
我在这里读了几个关于使用服务在两个控制器之间传递变量的问题,这与我的问题有什么关系吗?
提前致谢!
答案 0 :(得分:0)
如果您有一个主控制器,您可以将方法$scope.activeButton
放在那里以访问整个应用程序,变量$scope.isActivemaybe
可以是一个rootScope变量,如$rootScope.isActive
,记住注入您要访问活动值的每个控制器中的$rootScope
依赖关系