diff --git a/packages/editor/src/utils/type-match-rules.ts b/packages/editor/src/utils/type-match-rules.ts index 112bede8..8bda9e3c 100644 --- a/packages/editor/src/utils/type-match-rules.ts +++ b/packages/editor/src/utils/type-match-rules.ts @@ -58,7 +58,7 @@ const stringifyExampleValue = (value: any): string => { }; // 参考建议中最多展示的可选值个数,超出以「等」省略。 -const MAX_SUGGESTION_OPTIONS = 5; +const MAX_SUGGESTION_OPTIONS = 20; /** * 生成「请使用以下某一个值:xxx;xxx」形式的参考建议;无可选值时返回空字符串(不追加建议)。 diff --git a/packages/form/src/utils/typeMatch.ts b/packages/form/src/utils/typeMatch.ts index a8959023..c21fc285 100644 --- a/packages/form/src/utils/typeMatch.ts +++ b/packages/form/src/utils/typeMatch.ts @@ -142,7 +142,7 @@ const stringifyExampleValue = (value: any): string => { }; // 参考建议中最多展示的可选值个数,超出以「等」省略。 -const MAX_SUGGESTION_OPTIONS = 5; +const MAX_SUGGESTION_OPTIONS = 20; /** * 生成「请使用以下某一个值:xxx;xxx」形式的参考建议;无可选值时返回空字符串(不追加建议)。 diff --git a/packages/form/tests/unit/utils/typeMatch.spec.ts b/packages/form/tests/unit/utils/typeMatch.spec.ts index 3a78a06d..f9adc93a 100644 --- a/packages/form/tests/unit/utils/typeMatch.spec.ts +++ b/packages/form/tests/unit/utils/typeMatch.spec.ts @@ -196,13 +196,14 @@ describe('validateTypeMatch', () => { expect(validateTypeMatch(3, mForm, propsOf(config))).toBe('3 不在可选项中\n\n请使用以下某一个值:1;2'); }); - test('可选项超过 5 个时建议仅展示前 5 个并以「等」省略', () => { + test('可选项超过 20 个时建议仅展示前 20 个并以「等」省略', () => { + const values = Array.from({ length: 21 }, (_, i) => i + 1); const config = { type: 'select', - options: [1, 2, 3, 4, 5, 6, 7].map((v) => ({ text: `${v}`, value: v })), + options: values.map((v) => ({ text: `${v}`, value: v })), }; expect(validateTypeMatch(99, mForm, propsOf(config))).toBe( - '99 不在可选项中\n\n请使用以下某一个值:1;2;3;4;5 等', + `99 不在可选项中\n\n请使用以下某一个值:${values.slice(0, 20).join(';')} 等`, ); });