编辑单元格键盘行为对齐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'
}