!!!###!!!title=excel键盘交互对齐——VisActor/VTable 教程文档!!!###!!!!!!###!!!description=`ExcelEditCellKeyboardPlugin`是 VTable 的扩展组件,能够实现编辑单元格键盘行为对齐Excel的功能。!!!###!!!

编辑单元格键盘行为对齐Excel插件使用说明

ExcelEditCellKeyboardPlugin是 VTable 的扩展组件,能够实现编辑单元格键盘行为对齐Excel的功能。

插件实现能力说明

VTable本身有比较多的键盘事件响应,可以参考快捷键章节。

这些配置项能满足大部分的编辑表格的键盘响应要求,但为了更好的对齐Excel的键盘行为,我们开发了ExcelEditCellKeyboardPlugin插件,能够实现编辑单元格键盘行为对齐Excel的功能。

插件基本使用方式

const excelEditCellKeyboardPlugin = new VTablePlugins.ExcelEditCellKeyboardPlugin();

其中ExcelEditCellKeyboardPlugin的构造函数可以传入一个配置项,配置项的类型为IExcelEditCellKeyboardPluginOptions,具体如下:

export type IExcelEditCellKeyboardPluginOptions = {
  id?: string;
  /** 该插件响应的键盘事件列表 */
  responseKeyboard?: ExcelEditCellKeyboardResponse[];
  /** 删除能力是否只应用到可编辑单元格 */
  deleteWorkOnEditableCell?: boolean;
  /** 删除范围时通过批量接口聚合成一次 change_cell_values 事件 */
  batchCallChangeCellValuesApi?: boolean;
};

batchCallChangeCellValuesApi 用于控制选中多个范围时的删除行为:开启后插件会通过 changeCellValuesByRanges 进行一次批量更新,从而让 change_cell_values 以一次聚合事件形式触发,而不是逐单元格触发。 其中responseKeyboard配置项用于配置该插件响应的键盘事件列表,值类型为ExcelEditCellKeyboardResponse,具体定义如下:

export enum ExcelEditCellKeyboardResponse {
  ENTER = 'enter',
  TAB = 'tab',
  ARROW_LEFT = 'arrowLeft',
  ARROW_RIGHT = 'arrowRight',
  ARROW_DOWN = 'arrowDown',
  ARROW_UP = 'arrowUp',
  DELETE = 'delete',
  BACKSPACE = 'backspace'
}

插件使用示例

欢迎大家贡献自己的力量,一起来写更多插件!一起建设VTable的生态!