Angular组件在OnPush模式下无法检测更新的问题

在OnPush模式下,只有input的值发生变化时angular才会检测更新。简单类型的值:如string,number的值发生变化时即可出发更新。当input是对象时则需要改变它的引用才能触发更新,比如:

this.data.push(new data());

this.data = this.data.slice();

个人理解:ts语境下对象属性值的改变不算是对象的改变,它只检测指针指向的地址对不对。比如:

const s = new Student();

s.name = 'a';

你可能感兴趣的:(Angular组件在OnPush模式下无法检测更新的问题)