在父组件初始化或修改子组件的参数时调用,为了理解这个方法为什么会调用,要理解可变对象和不可变对象,字符串是不可变的, 当字符串创建,值不会改变;对象实例属性变化了,也会一直保存在固定的内存了i
1.第二次greeting赋值改变的是内存地址2.user变量本身仍然保持在被创建时的内存地址,改的是内存地址对象的内容。内存地址没有变。
演示OnChanges方法
1.ng g component chat
2.chat组件声明三个属性,(两个输入类型,普通的message)
3.chat.html子组件模板
child加一个背景颜色样式
4.chat组件实现这个方法
JSON.stringify(changes,null,2)转成json格式,使用两个空格缩进: JSON.stringify() 方法用于将 JavaScript 值转换为 JSON 字符串。
5.父组件app需要给子组件传刚才两个输入属性,所以在父组件也得声明刚才两个属性。
效果:
解析: