prop 是单向绑定的:当父组件的属性变化时,将传导给子组件,但是不会反过来。这是为了防止子组件无意修改了父组件的状态——这会让应用的数据流难以理解。
另外,每次父组件更新时,子组件的所有 prop 都会更新为最新值。这意味着你不应该在子组件内部改变 prop。如果你这么做了,Vue 会在控制台给出警告。
父组件与子组件直接的传值会有些小问题,特别是动态传值
<div\>
<childv-model\="message"\></child\>
<!-- 通过v-model将message绑定在child上 -->
</div\>
// 子组件
export default {
name: '',
props: {
// 通过value获取绑定message值
value: {
type: String,
default: ''
}
},
data: {
},
methods: {
changeMessage() {
// 通过触发组件的input事件改变message的值,
// 此时父组件中的message值就改变为你设置的值了
this.$emit('input', 'your message value')
}
}
})
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。