{{myArray}} теперь обновляется в виде с бета.16.

Обнаружение изменений изменилось.

До бета.16, если ваше мнение содержит{{myArray}}эта привязка не обновится, если вы не измените ссылку на массив. Например, если выpush() элементы в массив, представление не будет обновляться, чтобы показать новый элемент. Объяснение заключается в том, что поскольку ссылка на массив не изменилась, обнаружение угловых изменений не переоценивает привязку. этобета.15 плункер демонстрирует это поведение.

Начиная с бета.16 (и, следовательно, RC.1), все по-другому.{{myArray}} привязка теперь будет обновляться, даже если ссылка на массив не изменилась! Видеть этоRC.1 поршень.

Я посмотрел наChangeLog для бета.16и я не вижу ничего, что могло бы объяснить это изменение в поведении (но, возможно, я что-то пропустил). Кто-нибудь знает, что вызвало это изменение, и что еще может повлиять?

Код плункера:

@Component({
  selector: 'child',
  template: `<p>child: {{arr}}`
})
export class Child {
  @Input() arr;
}
@Component({
  selector: 'my-app',
  template: `{{title}} <p>parent: {{arr}}
    <button (click)="modifyArray()">modify array</button>
    <child [arr]="arr"></child>`,
  directives: [Child]
})
export class AppComponent {
  title = "Angular 2 beta.15";  // or "Angular 2 RC.1", as appropriate
  arr = 'one two three'.split(' ');
  modifyArray() {
    this.arr.push('another');
    console.log(this.arr);
  }
}

Ответы на вопрос(1)

Ваш ответ на вопрос