data仅代表自己的内部的状态数据,所以如果一个Component仅仅是自身改变状态,然后把状态反馈给外界的话,理论上说只用data就可以了。
显然组件通常不会这样,而是需要一种可进可出的状态,也就是允许外界对组件内部的数据进行修改(同时组件内的事件也会通知外部的接受者)。这里就要用propS了。那么propS相比data就是一种形式上的包装本质上没区别?不, 既然说Component允许外界对数据进行修改,那么怎么修改?可以通过直接属性修改:
<component prop="123" />
也可以通过v-bind:
<component :prop="parent_data" />
而这里的输入项,也就是component的prop是组件的props,只有props才会支持组件对外的属性设置或者绑定,data是不支持这样做的。