Lynn.Dou 发表于 2021-5-31 15:07:13

SpreadJS在线表格编辑器自定义功能 - 删除下拉菜单命令

在之前的文章 SpreadJS在线表格编辑器自定义功能 - 重定义下拉菜单命令,讲述了如何修改下拉菜单的subcommand命令。
有小伙伴咨询如何删除下拉菜单的子项呢?
本篇文章在 SpreadJS在线表格编辑器自定义功能 - 重定义下拉菜单命令 基础之上带领大家学习下。

1、需求:
如下图所示,删除 插入菜单的-插入工作表项


2、步骤

2、1如何获取相应的command
首先我们获取设计器的默认config
var designerConfig = JSON.parse(JSON.stringify(GC.Spread.Sheets.Designer.DefaultConfig))


找到 ”插入“ 对应的命令




查看 "cellsInsert" 命令,找到了要修改的子命令名称:"insertSheet"
GC.Spread.Sheets.Designer.getCommand("cellsInsert")



2、2 找到相应的command后,删除这个command

定义一个CommadMap集合
designerConfig.commandMap = {}获取cellsInsert命令列表

var insertList = GC.Spread.Sheets.Designer.getCommand("cellsInsert")
删除指定subCommand和分隔线
insertList.subCommands.splice(4,2)
放回commandMap
designerConfig.commandMap = insertList;
最后用setConfig将其放回默认config里面
var designer = GC.Spread.Sheets.Designer.findControl('gc-designer-container');
designer.setConfig(designerConfig)测试结果如下:





页: [1]
查看完整版本: SpreadJS在线表格编辑器自定义功能 - 删除下拉菜单命令