use*_*604 2 javascript model-view-controller contextmenu dynamically-generated angularjs
我想用angularjs在指令中创建一个上下文菜单,我可以创建一个菜单但不能用子菜单创建.我的意思是,在悬停时打开子菜单.
示例小提琴:示例上下文菜单
我的控制器:
$scope.menuOptions = [
['New User', function () {
console.log("New User");
}],
['Delete', function () {
console.log("Delete");
}]
];
Run Code Online (Sandbox Code Playgroud)
这个小提琴是非常好的,只有我想在这个上下文菜单中添加子菜单.如何根据此示例创建子菜单?
你在这里遇到的第一个问题是,你正在使用Bootstrap和Bootstrap不支持Submenus(不再)开箱即用.但您可以通过添加一些样式表来扩展功能.第二个问题是你需要扩展renderContextMenu函数以支持嵌套数组,目前它只支持简单数组.
这是我尝试解决您的问题:JSFIDDLE
仍然有点hacky但会工作.这是我改变的:
menuOptions,添加了一个新的示例Item,它没有第二个位置的函数,而是另一个项目数组angular.forEach...通过项目处理新方法的方法的功能,buildMenuItem因为我需要它来重用来处理子项目else if(item[1] instanceof Array)检查子菜单,这是添加子菜单的地方,使用递归添加子菜单项(你基本上可以有多个级别,而不只是一个)| 归档时间: |
|
| 查看次数: |
3570 次 |
| 最近记录: |