单向数据流就是 : 组件之间的数据传递具有单向数据流这样的特性。
下面看示例代码:
下面子组件的名称是MySon.vue , 父组件的名称是Father.vue.
在父组件里面使用动态绑定,把return的值存储在自己定义的属性里面
父组件代码:
子组件代码:
然后子组件通过props的语法格式,来获取到父元素传过来的值.
看渲染后的效果:
当我点击button时,执行fn函数里面函数体代码,所以我们可以看到控制台里面会打印数组里面下边3的元素.
注意点:
在vue中需要遵循单向数据流原则
- 在父传子的前提下,父组件的数据发生会通知子组件自动更新
- 子组件内部,不能直接修改父组件传递过来的props => props是只读的
最后说明下 : 父组件传给子组件的是一个对象,子组件修改对象的属性,是不会报错的,对象是引用类型, 互相更新;但不能改变引用地址.
props的值不能重新赋值, 但是引用类型可以子改父