如何从Global '+' Button中隐藏特定实体?
如何从全局"+"按钮中隐藏特定实体
当然有办法,下面是两种常用的实现方式:
1. 通过站点地图配置(推荐,无代码)
这是官方推荐的无代码方案,适用于模型驱动类应用:
- 打开应用的站点地图编辑器
- 定位到要隐藏的实体节点,取消勾选「在全局新建菜单中显示」的选项(不同版本界面表述可能略有差异,核心是找到控制全局菜单显示的开关)
- 保存并发布站点地图,刷新应用后就能看到该实体从全局"+"按钮里消失了
2. 自定义JavaScript代码(适合动态场景)
如果需要根据用户权限或其他条件动态隐藏,可通过JS代码修改DOM:
// 隐藏指定实体的全局菜单选项 function hideEntityFromGlobalAddMenu(entityLogicalName) { // 定位全局新建菜单的列表容器 const menuList = document.querySelector(".ms-ContextualMenu-list"); if (!menuList) return; // 找到对应实体的菜单项并隐藏 const targetItems = menuList.querySelectorAll(`[data-id*="${entityLogicalName}"]`); targetItems.forEach(item => { item.style.display = "none"; }); } // 使用示例:隐藏"contact"实体 hideEntityFromGlobalAddMenu("contact");
注意:用代码的话要考虑平台DOM结构的变动,建议优先用配置方式,代码方案作为补充。
内容的提问来源于stack exchange,提问作者Sidhu
相关产品推荐
相关产品推荐

