我是AngularJS的初级开发人员,我正在寻找实现我制作的工具栏的正确方法。目前,我的应用程序可以在多个级别上运行,具有:
app-角度应用程序的根和倍数app.sub-level(s)-具有不同的嵌套级别。
要点在应用程序模块上,我有一些局部视图(其中一个是工具栏),在我的控制器中以抽象应用程序状态的视图进行寻址。
[我想做的就是根据我的应用程序的状态来更改控制器中按钮的行为(例如,“删除”按钮的外观。子级别(.state)]
正确的方法是什么?
我已经读过关于使用$rootScope
的信息,根据我的理解,这是不建议的,因为它确实接近全局变量。
我也阅读过有关使用服务的信息,但是如果我只更改其中的变量,则服务不会改变。
所以,有什么正确的方法吗?
谢谢,对于冗长的帖子,我正在竭尽全力解释!
编辑:我也必须为按钮分配不同的行为(ng-ref和整个功能)
关于外观,请使用ng-class
。例如:
<button ng-class="{dull: sub-level.state==0, shiny: sub-level.state!=0}">
</button>
此示例将在按钮上设置一个类:dull
为0时为sub-level.state
,否则为shiny
。这些类需要在CSS中定义。
请注意,在此示例中,sub-level.state
必须是$scope
可访问变量。 (即$scope.sub-level.state
必须存在于相关控制器中)
这只会影响按钮的外观。如果要基于某些表达式实际上将其禁用,请查看ng-disabled
。