单项数据流指的是父子组件通过props通信,父组件传数据给子组件,子组件不能直接对传递过来的数据进行修改,否则vue会有警告;主要是为了防止多个子组件都修改父组件的数据,造成错误不方便追踪。
那有什么方法可以让子组件对传递过来的父组件进行修改然后自己使用呢?
子组件在data中定义专门的数据,把props属性值作为它的初始值,然后在方法或计算属性中更改它的值
父组件内:
子组件内:
1、在子组件中利用方法改变父组件传递过来的值
2、在子组件中利用方法改变父组件传递过来的值
如果想子组件内修改后的数据在父组件中也能同时更新显示,那应该怎么办呢?
一、子组件在修改数据后,通过this.$emit发送出去,父组件利用@接受时,后面再加上.sync,这样父组件就能同步更新数据了