|
13 | 13 | .buttons(v-if='buttonVisibility(field)')
|
14 | 14 | button(v-for='btn in field.buttons', @click='btn.onclick(model, field)', :class='btn.classes') {{ btn.label }}
|
15 | 15 | .hint(v-if='field.hint') {{ field.hint }}
|
16 |
| - .errors(v-if='errorsVisibility(field)') |
17 |
| - span(v-for='(error, index) in field.errors', track-by='index') {{ error }} |
| 16 | + .errors(v-if='fieldErrors(field).length > 0') |
| 17 | + span(v-for='(error, index) in fieldErrors(field)', track-by='index') {{ error }} |
18 | 18 | </template>
|
19 | 19 |
|
20 | 20 | <script>
|
|
126 | 126 | // Get style classes of field
|
127 | 127 | getFieldRowClasses(field) {
|
128 | 128 | let baseClasses = {
|
129 |
| - error: field.errors && field.errors.length > 0, |
| 129 | + error: this.fieldErrors(field).length > 0, |
130 | 130 | disabled: this.fieldDisabled(field),
|
131 | 131 | readonly: this.fieldReadonly(field),
|
132 | 132 | featured: this.fieldFeatured(field),
|
|
208 | 208 | // Child field executed validation
|
209 | 209 | onFieldValidated(res, errors, field) {
|
210 | 210 | this.errors = this.errors.filter(e => e.field != field.schema);
|
211 |
| - |
| 211 | +
|
212 | 212 | // Remove old errors for this field
|
213 | 213 | if (!res && errors && errors.length > 0) {
|
214 | 214 | // Add errors with this field
|
|
263 | 263 | return field.buttons && field.buttons.length > 0;
|
264 | 264 | },
|
265 | 265 |
|
266 |
| - errorsVisibility(field) { |
267 |
| - return field.errors && field.errors.length > 0; |
| 266 | + fieldErrors(field) { |
| 267 | + let res = this.errors.filter(e => e.field == field); |
| 268 | + if (res.length > 0) |
| 269 | + console.log("res", res); |
| 270 | + let res2 = res.map(item => item.error); |
| 271 | + if (res2.length > 0) |
| 272 | + console.log("res2", res2); |
| 273 | + return res2; |
268 | 274 | }
|
269 | 275 | }
|
270 | 276 | };
|
|
0 commit comments