本帖最后由 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[GC.Spread.Sheets.Designer.CommandNames.UndoList] = undoList;
- customConfig.commandMap[GC.Spread.Sheets.Designer.CommandNames.RedoList] = redoList;
复制代码
在上述代码中,我们将changeBackColor在撤销重做栈中的名称修改为了“哈哈哈哈哈哈”。
效果如下:
[
|
|