1. Support for resetting forms

Forms can now be resetted programmatically, which is great as this is a very common task when submitting forms.

Model-driven

@Component({
  selector: 'my-comp',
  template: `
    <div [formGroup]="form">
        <input formControlName="first">
        <input formControlName="last">
        <button (click)="reset()">Reset</button>
    </div>
  '
})
class MyComp {
  form = new FormGroup({
    first: new FormControl('Nancy'),
    last: new FormControl('Drew')
  });

  reset() {
    this.form.reset();  // will reset to null
  }
}

Template-driven

<form>
  <input name="first" ngModel>
  <input name="last" ngModel>
  <button type="reset">Reset</button>
</form>

2. AngularJS gets support for ngValue

Oh yes! AngularJS backports more and more feature of Angular 2. It now got ngValue support to make working with <option> even easier!

<select ng-model="obj.value">
  <option ng-repeat="option in options" ng-value="option"></option>
</select>

3. Guards and Resolve can now return promises

More information can be found in this article.

4. Router gets support for CanActivateChild Guard

Next to CanActivate and CanDeactivate, there’s now a CanActivateChild guards that decides if a child route can be activated or not.

5. String support for NumberPipe

NumberPipe can now consume strings as well.