zoukankan      html  css  js  c++  java
  • Vue组件通信的几种方法

    上一节说到,vue.js是允许子组件通过props接受父组件的信息,但是不允许父组件通过props接受子组件的信息

    1. $emit()和on

    当子组件需要向父组件传递数据时,就要用到自定义事件。
    使用观察者模式,子组件用 $emit()来触发事件,父组件用 $on()来监昕子组件的事件 。
    更常用的是: 父组件也可以直接在在子组件自定义标签上使用v-on来监听子组件触发的自定义事件。

    2. bus:兄弟组件和跨多级组件通信

    推荐使用一个空的 Vue 实例作为中央事件总线( bus )

    3. this.$parent 可以直接访问该组件的父组件,父组件可以通过this.$children访问他所有的子组件,还可以使用ref来定义子组件的索引

    **
    设计原则:
    子组件应该尽可能地避免依赖父组件的数据,更不应该去主动修改它的数据.
    父子组件最好还是通过props 和 $emit 来通信。
    **

    4. 更好的状态管理解决方案vuex

  • 相关阅读:
    MySql
    Docker
    达观数据
    Python面试题
    用Python构造ARP请求、扫描、欺骗
    git上传简单的命令行分析
    vue2自定义指令的作用
    自定义指令详解 vue
    文档打印 js
    通过Export2Zip实现表格内容下载成为excel文件
  • 原文地址:https://www.cnblogs.com/whyaza/p/11528492.html
Copyright © 2011-2022 走看看