From df24142dd9c1c87e96888f4055c7d58479ba9cb2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8E=E8=82=96=E7=A3=8A?= <18851179580@163.com> Date: Wed, 22 Jan 2025 16:18:38 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=9D=A1=E4=BB=B6=E5=88=A4?= =?UTF-8?q?=E6=96=AD=E7=9A=84=E5=A4=84=E7=90=86=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/index.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/utils/index.ts b/src/utils/index.ts index ec6e8373..98c07aee 100644 --- a/src/utils/index.ts +++ b/src/utils/index.ts @@ -242,13 +242,13 @@ export const custom_condition_judg = (fieldValue: any, type: string, value: numb // 根据字段值的类型,进行数字间的比较 if (typeof fieldValue === 'number') { return compare_numbers(fieldValue, numberValue, type); - } else if (Array.isArray(fieldValue)) { - // 如果字段值是数组,比较数组长度和指定值 - const valueLength = fieldValue.length; + } else if (Array.isArray(fieldValue) || typeof fieldValue === 'string') { + // 如果字段值是数组或字符串,比较数组长度和指定值 + const valueLength = fieldValue?.length || 0; return compare_numbers(valueLength, numberValue, type); - } else { - // 将字段值转换为数字进行比较, 如果是字符串的话,直接为NAN,比对不会成功,为空的时候会转为0 == 0会成功,其他情况下不会成功 - const numericFieldValue = +stringValue; + } else if (typeof fieldValue === 'object') { + // 如果字段值是对象,比较对象的属性值 + const numericFieldValue = Object.keys(fieldValue)?.length || 0; return compare_numbers(numericFieldValue, numberValue, type); } default: