Vue2父子通讯
在 Vue.js 2.3.0 及以上版本中,.sync 修饰符被引入,以简化父子组件之间的双向绑定。当你使用 .sync 修饰符时,Vue 会在父组件和子组件之间自动创建一个基于事件的双向绑定。这意味着,当你在子组件中更新一个带有 .sync 修饰符的 prop 时,父组件中的相应数据也会自动更新。
父组件的模板中这样写:
<ChildComponent :page-size.sync="pageSize" />
这实际上是在父组件和子组件之间创建了一个双向绑定。Vue 会在内部为 pageSize prop 添加一个更新监听器,当子组件更新这个 prop 的值时(通过触发一个形如 this.$emit(‘update:propName’, newValue) 的事件),父组件中的 pageSize 数据属性也会被更新为新的值。
在子组件中,你应该这样触发更新:
this.$emit('update:pageSize', newPageSizeValue);
注意事件名 update:pageSize 是如何构成的:它是 update: 前缀加上 prop 名 pageSize(注意大小写要保持一致)。
当子组件触发 update:pageSize 事件并传递一个新的值时,父组件中通过 .sync 修饰符绑定的 pageSize 数据属性会被更新为这个新的值。这样,父组件中的 pageSize 就会反映子组件中所做的更改。
原文地址:https://blog.csdn.net/weixin_46504400/article/details/143771049
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!