diff --git a/README.md b/README.md index fa36872..ce4fd9f 100644 --- a/README.md +++ b/README.md @@ -53,7 +53,7 @@ VXETable.use(VXETablePluginMenus, { | CLEAR_MERGE_CELL | 如果启用 mouse-config.area 功能,清除区域范围内单元格的临时合并状态 | — | | CLEAR_ALL_MERGE | 清除所有单元格及表尾的临时合并状态 | — | | COPY_CELL | 复制单元格数据的值;如果启用 mouse-config.area 功能,则复制区域范围内的单元格数据,支持 Excel 和 WPS | — | -| CUT_CELL | 剪贴单元格数据的值;如果启用 mouse-config.area 功能,则剪贴区域范围内的单元格数据,支持 Excel 和 WPS | — | +| CUT_CELL | (仅支持在单表区域内操作)剪贴单元格数据的值;如果启用 mouse-config.area 功能,则剪贴区域范围内的单元格数据,支持 Excel 和 WPS | — | | PASTE_CELL | 粘贴从表格中被复制的数据;如果启用 mouse-config.area 功能,则粘贴区域范围内的单元格数据,不支持读取剪贴板 | — | | INSERT_ROW | 插入数据 | records | | INSERT_ACTIVED_ROW | 插入数据并激活编辑状态 | Array\ | diff --git a/index.ts b/index.ts index dce0779..fd6c4d0 100644 --- a/index.ts +++ b/index.ts @@ -598,6 +598,15 @@ function checkPrivilege(item: MenuFirstOption | MenuChildOption, params: Interce case 'PASTE_CELL': { const cellAreas = $table.mouseConfig && $table.mouseOpts.area ? $table.getCellAreas() : [] item.disabled = cellAreas.length > 1 + if (!item.disabled) { + switch (code) { + case 'PASTE_CELL': + const { $vxe } = $table + const { clipboard } = $vxe + item.disabled = !clipboard || !clipboard.text + break + } + } break } case 'MERGE_OR_CLEAR': @@ -615,12 +624,6 @@ function checkPrivilege(item: MenuFirstOption | MenuChildOption, params: Interce case 'CLEAR_FIXED_COLUMN': item.disabled = isChildCol || !column.fixed break - case 'PASTE_CELL': { - const { $vxe } = $table - const { clipboard } = $vxe - item.disabled = !clipboard || !clipboard.text - break - } } } break diff --git a/package.json b/package.json index c299127..68d4c59 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vxe-table-plugin-menus", - "version": "1.5.0", + "version": "1.5.1", "description": "基于 vxe-table 的表格插件,提供实用的快捷菜单集", "scripts": { "lib": "gulp build"