From f6ed3efe1358be1d1719af789a69a0a5debd1952 Mon Sep 17 00:00:00 2001 From: flowerField Date: Thu, 3 Dec 2020 10:46:58 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=96=B0=E7=9A=84ApI:getRang?= =?UTF-8?q?eAxis()?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/guide/api.md | 19 +++++++++++++++++++ docs/zh/guide/api.md | 19 +++++++++++++++++++ src/global/api.js | 21 ++++++++++++++++++++- 3 files changed, 58 insertions(+), 1 deletion(-) diff --git a/docs/guide/api.md b/docs/guide/api.md index cc9a984..334b137 100644 --- a/docs/guide/api.md +++ b/docs/guide/api.md @@ -714,6 +714,25 @@ Use note: ------------ +### getRangeAxis() + +- **Explanation**: + + Returns an array of coordinate strings corresponding to the current selection. Multiple selections may exist. Each selection may be a single cell (such as A1) or a rectangular region of multiple cells (such as D9: E12) + +- **Usage**: + + - The current selection is"E10:E14"、"A7:B13"、"C4"、 "A3" and "C6:D9", execute + + `luckysheet.getRangeAxis()` + + The returned result is: + ```json + ["E10:E14", "A7:B13", "C4", "A3", "C6:D9"] + ``` + +------------ + ### getRangeValue([setting]) - **Parameter**: diff --git a/docs/zh/guide/api.md b/docs/zh/guide/api.md index 79bf2eb..4a5a998 100644 --- a/docs/zh/guide/api.md +++ b/docs/zh/guide/api.md @@ -702,6 +702,25 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开 ------------ +### getRangeAxis() + +- **说明**: + + 返回对应当前选区的坐标字符串数组,可能存在多个选区。每个选区可能是单个单元格(如 A1)或多个单元格组成的矩形区域(如 D9:E12) + +- **示例**: + + - 当前选区为"E10:E14"、"A7:B13"、"C4"、 "A3"和"C6:D9",执行 + + `luckysheet.getRangeAxis()` + + 则返回结果为: + ```json + ["E10:E14", "A7:B13", "C4", "A3", "C6:D9"] + ``` + +------------ + ### getRangeValue([setting]) - **参数**: diff --git a/src/global/api.js b/src/global/api.js index d76dabb..48aa233 100644 --- a/src/global/api.js +++ b/src/global/api.js @@ -38,7 +38,7 @@ import controlHistory from '../controllers/controlHistory'; import { zoomRefreshView, zoomNumberDomBind } from '../controllers/zoom'; import dataVerificationCtrl from "../controllers/dataVerificationCtrl"; import dayjs from "dayjs"; - +import {getRangetxt } from '../methods/get'; const IDCardReg = /^\d{6}(18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/i; /** @@ -1470,6 +1470,25 @@ export function getRange() { return result; } + +/** + * 返回对应当前选区的坐标字符串数组,可能存在多个选区。 + * 每个选区可能是单个单元格(如 A1)或多个单元格组成的矩形区域(如 D9:E12) + * @returns {Array} + */ +export function getRangeAxis() { + let result = []; + let rangeArr = Store.luckysheet_select_save; + let sheetIndex = Store.currentSheetIndex; + + rangeArr.forEach(ele=>{ + let axisText = getRangetxt(sheetIndex, {column:ele.column,row:ele.row}); + result.push(axisText); + }) + + return result; +} + /** * 返回指定工作表指定范围的单元格二维数组数据,每个单元格为一个对象 * @param {Object} options 可选参数