Angular UI 路由器,菜单在 $state 更改时失去功能
Angular UI Router, Menu loses functionality on $state change
我的菜单有一个嵌套视图,这是一个向其添加 类 和功能的指令,即 collapse/suppress。如果这些链接之一具有该功能,则菜单中的项目可以更改为不同的集合。我的问题发生在菜单重新填充后,因为它失去了 collapse/expand 以及点击功能。我确定这是在我的 LayoutCtrl 中的 $changeState 事件中处理的问题,但我还没有找到 re-instate 指令功能的方法:
任何有关如何 re-instate 菜单上的折叠和单击事件 re-population 的帮助将不胜感激。
我通过 $watch 事件找到了解决方案:
<ul data-anu-menu="" menu-items="layout.menuItems">
scope:{
menuItems: '='
},
link: function (scope, element, attrs) {
scope.$watch('menuItems', function (val1, val2) {
if (val1.length != val2.length) {
$timeout(processMenu, 0);
}});
我的菜单有一个嵌套视图,这是一个向其添加 类 和功能的指令,即 collapse/suppress。如果这些链接之一具有该功能,则菜单中的项目可以更改为不同的集合。我的问题发生在菜单重新填充后,因为它失去了 collapse/expand 以及点击功能。我确定这是在我的 LayoutCtrl 中的 $changeState 事件中处理的问题,但我还没有找到 re-instate 指令功能的方法:
任何有关如何 re-instate 菜单上的折叠和单击事件 re-population 的帮助将不胜感激。
我通过 $watch 事件找到了解决方案:
<ul data-anu-menu="" menu-items="layout.menuItems">
scope:{
menuItems: '='
},
link: function (scope, element, attrs) {
scope.$watch('menuItems', function (val1, val2) {
if (val1.length != val2.length) {
$timeout(processMenu, 0);
}});