Vue组件通信7种方式

组件化机制:

vue组件系统提供了⼀种抽象,让我们可以使⽤独⽴可复⽤的组件来构建⼤型应⽤,任意类型的应⽤界 ⾯都可以抽象为⼀个组件树。组件化能提⾼开发效率,⽅便重复使⽤,简化调试步骤,提升项⽬可维护 性,便于多⼈协同开发。
 

常用的组件通信方式:

1、props/emit:父子组件之间的传值

2、$on/$emit:事件总线,任意两个组件之间传值

3、Vuex/localStorage:全局数据管理

4、$parent/$children/$refs:高耦合性,直接访问父子组件实例

5、$attrs/$listeners:除了在props中声明的所有属性/父组件中传递的所有方法

6、provide/inject:祖先组件中声明后,可以传递给所有的后代组件

// ancestor
provide() {    return {foo: 'foo'} }
// descendant
inject: ['foo']

7、插槽:(匿名插槽,具名插槽,作用域插槽)

// comp
<div>
    <slot :foo="foo"></slot>
</div>

// parent
<Comp>
    <!-- 把v-slot的值指定为作⽤域上下⽂对象 -->
    <template v-slot:default="slotProps">
        来⾃⼦组件数据:{{slotProps.foo}}
    </template>
</Comp>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值