Joestar.Xu 发表于 2023-12-28 15:31:46

自定义命令(Command)如何设置撤销重做栈名称

本帖最后由 Joestar.Xu 于 2024-5-9 09:16 编辑

很多客户在使用SpreadJS的自定义Command时会发现一个问题,在撤销时没有显示名称,取而代之的是一片空白,如下图所示:



这样会让用户不知道自己做了什么操作,为了解决这样的问题,我们需要再重写redoList和undoList这两个指令:

例如,当我有一个自定义Command的变量名为setBackColor:

let undoList = GC.Spread.Sheets.Designer.getCommand(GC.Spread.Sheets.Designer.CommandNames.UndoList);
let redoList = GC.Spread.Sheets.Designer.getCommand(GC.Spread.Sheets.Designer.CommandNames.RedoList);
redoList.commandMap['changeBackColor'] = '哈哈哈哈哈哈';
undoList.commandMap['changeBackColor'] = '哈哈哈哈哈哈';

customConfig.commandMap = {};
customConfig.commandMap = undoList;
customConfig.commandMap = redoList;

在上述代码中,我们将changeBackColor在撤销重做栈中的名称修改为了“哈哈哈哈哈哈”。

效果如下:
[
页: [1]
查看完整版本: 自定义命令(Command)如何设置撤销重做栈名称