File tree Expand file tree Collapse file tree 2 files changed +26
-2
lines changed Expand file tree Collapse file tree 2 files changed +26
-2
lines changed Original file line number Diff line number Diff line change 15
15
16
16
// set our validation options
17
17
this .$set (' form.$errors' , {});
18
- this .$set (' form.$valid' , false );
18
+ this .$set (' form.$valid' , true );
19
+
20
+ this .$watch (' form.$errors' , (val ) => {
21
+ let valid = false ;
22
+ if ( Object .keys (this .form .$errors ).length == 0 ) valid = true ;
23
+ this .form .$valid = valid;
24
+ return valid;
25
+ });
19
26
}
20
27
}
21
28
</script >
Original file line number Diff line number Diff line change @@ -67,7 +67,7 @@ describe('FormlyForm', () => {
67
67
expect ( JSON . parse ( vm . $el . querySelector ( '#lname_field' ) . textContent ) ) . to . deep . equal ( data . form . lname ) ;
68
68
expect ( JSON . parse ( vm . $el . querySelector ( '#fname_field' ) . textContent ) ) . to . deep . equal ( { type : 'input' , value : '' } ) ;
69
69
expect ( data . form . $errors ) . to . deep . equal ( { } ) ;
70
- expect ( data . form . $valid ) . to . be . false ;
70
+ expect ( data . form . $valid ) . to . be . true ;
71
71
72
72
} ) ;
73
73
@@ -101,5 +101,22 @@ describe('FormlyForm', () => {
101
101
expect ( vm . $el . querySelectorAll ( 'fieldset .restricted-field' ) ) . to . be . length ( 1 ) ;
102
102
103
103
} ) ;
104
+
105
+ it ( 'should compute any errors' , ( done ) => {
106
+ let data = {
107
+ form : {
108
+
109
+ }
110
+ } ;
111
+ createForm ( '<formly-form :form="form"></formly-form>' , data ) ;
112
+ expect ( vm . form . $errors ) . to . deep . equal ( { } ) ;
113
+ expect ( vm . form . $valid ) . to . be . true ;
114
+ vm . $set ( 'form.$errors.test' , 'testing' ) ;
115
+
116
+ setTimeout ( ( ) => {
117
+ expect ( vm . form . $valid ) . to . be . false ;
118
+ done ( ) ;
119
+ } , 0 ) ;
120
+ } ) ;
104
121
105
122
} ) ;
You can’t perform that action at this time.
0 commit comments