title: NgModel update on both onBlur & onSubmit
body: <p>I am trying to create a form with inputs that only update onBlur (<code>[ngFormOptions]="{updateOn: 'blur'}"</code>). But a side effect of this is that the form is no longer submitted once the user hits 'enter', since the model is only updated onBlur. (same as <a href="https://stackoverflow.com/questions/48636334/update-form-values-both-on-blur-and-submit-in-angular">this</a> question, but it has no answer)</p>
  
  <p>As a result of this the form is marked invalid, since there is a value in the input field, but the model is not yet updated with the value. </p>
  
  <p>Versions:
  - Angular <code>6.0.7</code>
  - @angular/forms <code>6.0.7</code></p>
  
  <hr>
  
  <p><strong>HTML example</strong></p>
  
  <pre><code>&lt;form (ngSubmit)="login()" #loginForm="ngForm" [ngFormOptions]="{updateOn: 'blur'}" [validate-on-submit]="loginForm"&gt;
    &lt;input type="text" ([NgModel])="user.username"/&gt;
    &lt;input type="password" ([NgModel])="user.password"/&gt;
  &lt;/form&gt;
  </code></pre>
  
  <p>When entered a valid text in both fields and hitting 'enter', the form validates and marks password (the input that had the focus) as invalid, since the NgModel has not yet been updated, and thus the value is invalid. </p>
  
  <hr>
  
  <p><strong>What do I want</strong></p>
  
  <p>So what I am looking for is a way to validate on both <code>onBlur</code> aswell as <code>onSubmit</code>. I know that since Angular 5 we have the option <code>[ngFormOptions]="{updateOn: 'blur'}"</code>, but is there a way to give 2 parameters to this object?</p>
  
  <p>(<code>[ngFormOptions]="{updateOn: ['blur', 'submit']}"</code> doesn't seem to work)</p>
  
  <p>Almost forgot, I do <strong>not</strong> want the model updated <code>onChange</code> (creates annoying messages that are not very helpfull, since the user is still typing..)</p>