From 2ea876a2a076974bb17a254b1b2e1156d702d99c Mon Sep 17 00:00:00 2001 From: roymondchen Date: Mon, 27 May 2024 17:22:04 +0800 Subject: [PATCH] =?UTF-8?q?style(utils):=20=E5=AE=8C=E5=96=84ts=E5=AE=9A?= =?UTF-8?q?=E4=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/utils/src/index.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/utils/src/index.ts b/packages/utils/src/index.ts index 6fd32404..2a003c63 100644 --- a/packages/utils/src/index.ts +++ b/packages/utils/src/index.ts @@ -165,9 +165,12 @@ export const guid = (digit = 8): string => return v.toString(16); }); -export const getValueByKeyPath: any = (keys: string | string[] = '', data: Record = {}) => { +export const getValueByKeyPath = ( + keys: number | string | string[] = '', + data: Record = {}, +): any => { // 将 array[0] 转成 array.0 - const keyArray = Array.isArray(keys) ? keys : keys.replaceAll(/\[(\d+)\]/g, '.$1').split('.'); + const keyArray = Array.isArray(keys) ? keys : `${keys}`.replaceAll(/\[(\d+)\]/g, '.$1').split('.'); return keyArray.reduce((accumulator, currentValue: any) => { if (isObject(accumulator) || Array.isArray(accumulator)) { return accumulator[currentValue]; @@ -177,7 +180,7 @@ export const getValueByKeyPath: any = (keys: string | string[] = '', data: Recor }, data); }; -export const setValueByKeyPath: any = (keys: string, value: any, data: Record = {}) => +export const setValueByKeyPath = (keys: string | number, value: any, data: Record = {}): any => objectSet(data, keys, value); export const getNodes = (ids: Id[], data: MNode[] = []): MNode[] => {