Lynn.Dou 发表于 2021-11-18 11:15:36

组件版设计器-重写右键菜单全部粘贴项

本帖最后由 Lynn.Dou 于 2021-11-18 11:15 编辑

背景:
客户希望能重写设计器右键菜单的全部粘贴项,点击全部粘贴时,先弹出弹窗做出提示,再进行粘贴。

思路:
找到全部粘贴命令,重写excute方法,执行想实现的代码逻辑。
然后将命令注册,并赋于原命令。

代码:
var config = JSON.parse(JSON.stringify(GC.Spread.Sheets.Designer.DefaultConfig));
                        var newPasteCommand = GC.Spread.Sheets.Designer.getCommand(GC.Spread.Sheets.Designer.CommandNames.DesignerPasteAll);
                        if(newPasteCommand){
                              var oldExecute = newPasteCommand.execute;
                              newPasteCommand.execute = function(context, propertyName, args){
                                    //添加confirm逻辑
                                        alert("粘贴");
                                       
                                        oldExecute.call(this, context, propertyName, args)
                              }
                        }
                        config.commandMap = {};
                        config.commandMap = newPasteCommand;

                        var d = new GC.Spread.Sheets.Designer.Designer(document.getElementById("gc-designer-container"), config);完整代码请参考附件demo
页: [1]
查看完整版本: 组件版设计器-重写右键菜单全部粘贴项