Commit 765064a190b1a24dfb9ae808e99807ddae2ed212

Authored by Mikasa33
Committed by GitHub
1 parent bbf178f6

feat(form): requires Increase function type value (#649)

* feat(form): requires Increase function type value

* feat(form): requires Increase function type value

* fix(form): 修复 rules 赋值错误的问题
src/components/Form/src/components/FormItem.vue
... ... @@ -174,8 +174,12 @@
174 174 return Promise.resolve();
175 175 }
176 176  
177   - if ((!rules || rules.length === 0) && required) {
178   - rules = [{ required, validator }];
  177 + const getRequired = isFunction(required)
  178 + ? required(unref(getValues))
  179 + : required;
  180 +
  181 + if ((!rules || rules.length === 0) && getRequired) {
  182 + rules = [{ required: getRequired, validator }];
179 183 }
180 184  
181 185 const requiredRuleIndex: number = rules.findIndex(
... ...
src/components/Form/src/types/form.ts
... ... @@ -149,7 +149,7 @@ export interface FormSchema {
149 149 }) => Recordable)
150 150 | object;
151 151 // Required
152   - required?: boolean;
  152 + required?: boolean | ((renderCallbackParams: RenderCallbackParams) => boolean);
153 153  
154 154 suffix?: string | number | ((values: RenderCallbackParams) => string | number);
155 155  
... ...