banner
banner
banner
NEWS LETTER

VUE2-组件通信的总结

Scroll down

props — [父子通信]

  • 传递数据类型:
    • 可能是函数 — 实质子组件想给父亲传递数据
    • 可能不是函数 — 实质就是父亲给子组件传递数据
  • 示例:<TodoList :todos="123" updateChecked="hander">
  • 特殊情况:路由传递props
    • 布尔值类型,把路由中params参数映射为组件props数据
    • 对象,静态数据
    • 函数,可以把路由中params|query参数映射为组件props数据

自定义事件 ($emit, $on[简写@]) — 子给父传递数据

$bus 全局事件总线 — 万能

  • 组件实例的原型的原型指向的Vue.prototype

pubsub-js[发布订阅消息]— 万能

Vuex — 数据非持久化万能

插槽 — 父子通信

v-model实现组件通信 — 父子数据同步

  • v-model:指令,可以收集表单数据
  • 注:v-model收集checkbox需要用数组收集

属性修饰符.sync,可以实现父子数据同步。

$attrs与$listeners — vue-helper父子组件通信

  • $attrs:组件实例的属性,可以获取到父亲传递的props数据(前提子组件没有通过props接受)
  • $listeners:组件实例的属性,可以获取到父亲传递自定义事件(对象形式呈现)

$children与$parent — 父子组件通信

  • ref:可以在父组件内部获取子组件—实现父子通信
  • $children:可以在父组件内部获取全部的子组件【返回数组】
  • $parent:可以在子组件内部获取唯一的父组件【返回组件实例】
其他文章
cover
VUE3-Pinia
  • 24/11/01
  • 14:39
  • VUE
cover
VUE2-拓展(主了解)
  • 24/11/01
  • 13:58
  • VUE
目录导航 置顶
  1. 1. props — [父子通信]
  2. 2. 自定义事件 ($emit, $on[简写@]) — 子给父传递数据
  3. 3. $bus 全局事件总线 — 万能
  4. 4. pubsub-js[发布订阅消息]— 万能
  5. 5. Vuex — 数据非持久化 — 万能
  6. 6. 插槽 — 父子通信
  7. 7. v-model实现组件通信 — 父子数据同步
  8. 8. 属性修饰符.sync,可以实现父子数据同步。
  9. 9. $attrs与$listeners — vue-helper — 父子组件通信
  10. 10. $children与$parent — 父子组件通信
请输入关键词进行搜索