title: Ionic2 [(ngModel)] freezes ionic if ion-toggle is in modal
body: <p>I have this code for an <code>&lt;ion-toggle&gt;</code> in a modal page but when I go to the page it freezes Ionic and I need to shut it down to get it working again. When I leave the binding out, the <code>&lt;ion-toggle&gt;</code> is displayed correct. On the same page is a form that is using <code>ngModel</code>.</p>
  
  <pre><code>&lt;ion-item&gt;
    &lt;ion-label&gt;public&lt;/ion-label&gt;
    &lt;ion-toggle (ionChange)="togglePublic()" [(ngModel)]="newComment.public"&gt;&lt;/ion-toggle&gt;
  &lt;/ion-item&gt;
  </code></pre>
  
  <p>Sombody an idea what the problem can be?</p>
  
  <p>The full html .</p>
  
  <pre><code>&lt;ion-content padding&gt;
    &lt;ng-container *ngIf="timer"&gt;
      &lt;ng-container *ngIf="addingComment"&gt;
        &lt;ion-card-header text-center class="new-comment"&gt;
          {{newComment.author}}
        &lt;/ion-card-header&gt;
        &lt;ion-card-content&gt;
          &lt;form [formGroup]="commentGroup"&gt;
            &lt;ion-textarea placeholder="" clearInput formControlName="comment" [(ngModel)]="newComment.message"&gt;&lt;/ion-textarea&gt;
            &lt;ion-item *ngIf="commentGroup.controls['comment'].hasError('minlength') &amp;&amp; commentGroup.controls.comment.touched" class="invalid"&gt;
              &lt;p&gt;The comment needs to be at least 4 characters&lt;/p&gt;
            &lt;/ion-item&gt;
  
            &lt;ion-item *ngIf="commentGroup.controls['comment'].hasError('maxlength') &amp;&amp; commentGroup.controls.comment.touched" class="invalid"&gt;
              &lt;p&gt;The max lengt is 140 characters&lt;/p&gt;
            &lt;/ion-item&gt;
  
            &lt;ion-item *ngIf="commentGroup.controls['comment'].hasError('required') &amp;&amp; commentGroup.controls.comment.touched" class="invalid"&gt;
              &lt;p&gt;A comment is required!&lt;/p&gt;
            &lt;/ion-item&gt;
          &lt;/form&gt;
          &lt;ion-item&gt;
            &lt;ion-label&gt;public&lt;/ion-label&gt;
            &lt;ion-toggle (ionChange)="togglePublic()" [(ngModel)]="newComment.public"&gt;&lt;/ion-toggle&gt;
          &lt;/ion-item&gt;
          &lt;p class="text-center"&gt;{{sToTime(newComment.time)}}&lt;/p&gt;
          &lt;ion-buttons end&gt;
            &lt;button (tap)="cancelComment()" color="danger" ion-button small&gt;cancel&lt;/button&gt;
            &lt;button (tap)="postComment()" ion-button small&gt;post&lt;/button&gt;
          &lt;/ion-buttons&gt;
        &lt;/ion-card-content&gt;
      &lt;/ng-container&gt;
      &lt;ion-card *ngFor="let comment of commentsToDisplay" class="comment "&gt;
        &lt;ng-container *ngIf="!comment.remove &amp;&amp; !comment.addComment"&gt;
          &lt;ion-card-header class="text-center"&gt;
            {{comment.author}}
          &lt;/ion-card-header&gt;
          &lt;ion-card-content&gt;
            &lt;p&gt;{{comment.message}}&lt;/p&gt;
            &lt;p class="text-center"&gt;{{sToTime(comment.time)}}&lt;/p&gt;
          &lt;/ion-card-content&gt;
        &lt;/ng-container&gt;
        &lt;ng-container *ngIf="comment.remove &amp;&amp; !comment.addComment"&gt;
          &lt;div class="fadeout"&gt;
            &lt;ion-card-header class="text-center"&gt;
              {{comment.author}}
            &lt;/ion-card-header&gt;
            &lt;ion-card-content&gt;
              &lt;p&gt;{{comment.message}}&lt;/p&gt;
              &lt;p class="text-center"&gt;{{sToTime(comment.time)}}&lt;/p&gt;
            &lt;/ion-card-content&gt;
          &lt;/div&gt;
        &lt;/ng-container&gt;
      &lt;/ion-card&gt;
    &lt;/ng-container&gt;
  
  &lt;/ion-content&gt;
  </code></pre>
  
  <p>And here is the TS constructor where the this.newComment.public to bind is defined in.</p>
  
  <pre><code>  constructor(public viewCtrl: ViewController, public navParams: NavParams, public authService: AuthService, public commentData: CommentData) {
      this.isSerie = navParams.get('isSerie');
      this.media = navParams.get('media');
      this.comments = [];
      this.commentsToDisplay = [];
      this.commentGroup = new FormGroup({ comment: new FormControl('', Validators.compose([Validators.required, Validators.minLength(4), Validators.maxLength(140)])) });
      this.forwardingTimer = Observable.timer(0, 250);
      this.newComment = {
        message: '',
        author: this.authService.currentUser.user_name,
        time: this.originalTime,
        public: true
      }
    }
  </code></pre>