# 单向数据流
首先我们要明白,组件间传递数据是单向数据流。默认的父向子传递数据是通过属性向下传递。但是在子组件中不可以对数据做任何的更改。更改是错误的,不会影响到父组件的数据变化,而且会报错。
如何解决?需要借助工具将其改变
## **举个栗子**
水往低处流,就相当于单向数据流,只能朝一个方向流动。如果希望往上流的话,我们可以借助人力或者机械这种工具来改变。那么这个**工具对应的vue内部我们称之为自定义事件**。
:-: ![](https://img.kancloud.cn/34/1a/341abf93fabc846f5a01b298fc69c799_450x301.png)