找回密码
 立即注册

QQ登录

只需一步,快速开始

Derrick.Jiao 讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-3-15 15:47  /   查看:3681  /  回复:0
本帖最后由 DerrickJiao 于 2021-3-15 18:19 编辑

相信大家看了组件化编辑器的自定义右键菜单的两篇教程,都大致了解如何定义右键菜单。了解SpreadJS的小伙伴应该都知道,组件化编辑器的右键菜单与SpreadJS的自定义右键菜单有所不同,其中一个区别是在哪里显示。

在SpreadJS中,右键菜单通过workArea来控制显示区域以及itemsDataForShown控制条件。在组件化编辑器中,右键菜单是通过visibleContext控制其显示。我们可以设置visibleContext:"ClickRowHeader || ClickColHeader || ClickViewport",使得新增的右键菜单项在行头、列头、视图区域显示。

那么我们要想自定义条件显示需要怎么做呢?我们需要为visibleContext添加上我们的自定义属性,参考下面的代码
  1. myCmd: {        
  2.                 text: "弹窗菜单",
  3.                 commandName: "myCmd",
  4.                  visibleContext:"CData",   //添加自定义属性
  5.                  execute: () =>{
  6.                        alert("我是新增的右键菜单");
  7.                  }
  8. }
复制代码

这个CData就是我们显示的一个状态,在符合需求的条件下,可以用setData将其改为true,使得这个项能够在表单中显示。例如:
  1. designer.setData("CData",true)
复制代码

这样就能够通过自定义的条件下去显示我们的右键菜单项。



0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部