我认为在讨论之后我非常清楚角度变化检测是如何工作的:为什么当[值]改变时,变化检测不会发生在这里?
但看看这个插件:https://plnkr.co/edit/jb2k7U3TfV7qX2x1fV4X ? p = preview
@Component({
selector: 'simple',
template: `
<div (click)="onClick()">
{{myData[0].name}}
</div>
`,
changeDetection: ChangeDetectionStrategy.OnPush
})
export class Simple {
public @Input() myData;
constructor() {
}
public onClick() {
}
}
Run Code Online (Sandbox Code Playgroud)
点击a,它改为c
据我所知,click事件触发了应用程序级别的更改检测,但[myData] ="testData"仍然引用同一个对象,我使用On Push on Simple,为什么会更改?
angular ×1