We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
功能请求
v2.9.8
我有一个需求,尝试了很久。暂时也没有找到好的解决方案。
1,有一个“小组列表”。可以通过dropdown下拉菜单做一些操作:如,新建、重命名、删除某个小组。 2,但是由于权限控制,有一些“小组”是无权限删除的。因此当右键点击该“小组”时,我期望下拉菜单中就没有:重命名,删除。 3,我采用的是这样渲染方式:dropdown.render({ elem: '#id-menu li', data:[] ...}); 。data固定后就无法在展示的时候动态改变了。我也尝试了,在不同场景下使用dropdown.reloadData({data:[]})的方式,效果不佳。 4,我尝试了通过jquery:$('#id-menu li').on('contextmenu', function(e){ e.preventDefault(); // 这里调用dropdown.render(), dropdown.renderData()等,效果不佳。没有达到期望的效果。 }
不知现在是否有方法可以实现以上效果 ,感谢。
# 假设我有一个菜单 <body> <ul id="id-menu"> <li data-id="1">小组1</li> <li data-id="2">小组2</li> <li data-id="3">小组3</li> </ul> </body> # JS处理代码 dropdown.render({ elem: '#id-menu li', trigger: 'contextmenu', data: [{id:1, title:'新建'}, {id:2, title:'重命名'}, {id:3, title:'删除'}] click: function(obj, othis){ // doing something }, before : function(obj, othis{ // 是否可以增加一个这样的函数,在渲染前,去动态修改data:菜单项,因为有的"小组X"不能被重命名或者删除。 } });
No response
103.0.5060.134
The text was updated successfully, but these errors were encountered:
在 ready 回调中去重载 data
ready
data
dropdown.render({ elem: '#id-menu li', trigger: 'contextmenu', data: [{id:1, title:'新建'}, {id:2, title:'重命名'}, {id:3, title:'删除'}] click: function(obj, othis){ // doing something }, ready : function() { // 不允许被重命名和删除的条件 if (true) { dropdown.reloadData(this.id, { data: [{id:1, title:'新建'}] }); } } });
Sorry, something went wrong.
在 ready 回调中去重载 data dropdown.render({ elem: '#id-menu li', trigger: 'contextmenu', data: [{id:1, title:'新建'}, {id:2, title:'重命名'}, {id:3, title:'删除'}] click: function(obj, othis){ // doing something }, ready : function() { // 不允许被重命名和删除的条件 if (true) { dropdown.reloadData(this.id, { data: [{id:1, title:'新建'}] }); } } });
谢谢贤心。但这个方法,刚刚我验证了一下,存在2个问题: 1,ready函数是渲染后调用的,因此第1次点击“小组”的时候,始终会显示最开始的菜单(不正确),相当于重载无效(每次点击都是显示上次应该显示的菜单)。 2,ready函数调用的次数很奇怪。第一次点击调用1次,然后后续点击每次调用2,4,8,16次....
ready : function(elemPanel, elem) { const { name, id, mine, type, count} = this.elem.context.dataset; console.log('----->type:', type) // 不允许被重命名和删除的条件 if (true) { dropdown.reloadData(this.id, { data: [{id:'create', title:'新建'}] }); } },
打印了: 511 次 ----->type: 0
No branches or pull requests
议题条件
议题类型
功能请求
使用版本
v2.9.8
问题描述
我有一个需求,尝试了很久。暂时也没有找到好的解决方案。
1,有一个“小组列表”。可以通过dropdown下拉菜单做一些操作:如,新建、重命名、删除某个小组。
2,但是由于权限控制,有一些“小组”是无权限删除的。因此当右键点击该“小组”时,我期望下拉菜单中就没有:重命名,删除。
3,我采用的是这样渲染方式:dropdown.render({ elem: '#id-menu li', data:[] ...}); 。data固定后就无法在展示的时候动态改变了。我也尝试了,在不同场景下使用dropdown.reloadData({data:[]})的方式,效果不佳。
4,我尝试了通过jquery:$('#id-menu li').on('contextmenu', function(e){
e.preventDefault();
// 这里调用dropdown.render(), dropdown.renderData()等,效果不佳。没有达到期望的效果。
}
不知现在是否有方法可以实现以上效果 ,感谢。
业务代码
截图补充
No response
浏览器
103.0.5060.134
演示地址
No response
友好承诺
The text was updated successfully, but these errors were encountered: