angularjs – 确定活动控制器
发布时间:2020-12-17 08:46:51 所属栏目:安全 来源:网络整理
导读:是否可以确定当前有效的控制器?有效,我不是指加载,而是在当前视图层次结构中使用. 我想要做的是更新全局键盘快捷键列表,具体取决于当前活动的控制器(当前视图可用的键盘快捷键). 我认为一种方法是使用服务来存储活动控制器的名称,甚至是要显示的菜单. 每次
是否可以确定当前有效的控制器?有效,我不是指加载,而是在当前视图层次结构中使用.
我想要做的是更新全局键盘快捷键列表,具体取决于当前活动的控制器(当前视图可用的键盘快捷键).
我认为一种方法是使用服务来存储活动控制器的名称,甚至是要显示的菜单.
每次视图更改时,控制器都将执行,因此您可以运行一个功能来更新服务. Here is a fiddle具有类似的情况,我使用的菜单服务为每个视图存储不同的菜单,该服务有一个setMenu()和getMenu(),每次执行一个控制器时它会通知服务哪个菜单被激活,每当我调用getMenu()它将返回活动菜单. /* Services */ app.factory('Menu',function () { var activeMenu; var menu = { home: '<button>A</button><button>B</button>',list: '<button>C</button><button>D</button>',settings: '<button>E</button><button>F</button>',} function setMenu(name) { activeMenu = name; } function getActiveMenu() { return menu[activeMenu]; } return { setMenu: setMenu,getMenu : getActiveMenu } }); /* Controllers */ function HomeCtrl($scope,Menu) { Menu.setMenu('home'); $scope.menu = Menu.getMenu(); } function ListCtrl($scope,Menu) { Menu.setMenu('list'); $scope.menu = Menu.getMenu(); } function SettingsCtrl($scope,Menu) { Menu.setMenu('settings'); $scope.menu = Menu.getMenu(); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- shell – cqlsh相当于mysql -e
- XFire创建WebService实例应用
- Angular2 PrimeNG – 当底层数据发生变化时如何重置dataTab
- Angular2/RxJs什么时候应该取消订阅`Subscription`
- shell – packet_write_wait:连接到xxx.xxx.xxx.xxx:管道
- scala – Play2形式属性 – 在其中“值 – 不是Symbol的成员
- case-class上的`productElement(i)`是否使用反射?
- Scala强调用于简化函数文字的语法
- angular2 中比较复杂的数据类型,在单独文件中定义。
- shell – 从stdin显示手册页