vue依赖注入的使用,provide和inject

当需要向子孙组件传递值时,传统的组件传值方法变得繁琐。Vue的provide和inject提供了解决方案。祖先组件通过provide提供数据或方法,子孙组件利用inject接收,无需逐层传递。依赖注入简化了代码,但过度使用会增加组件间的耦合,且注入的属性非响应式。若需响应式或全局状态管理,推荐使用Vuex。
摘要由CSDN通过智能技术生成

我们在进行组件传值时会有这样一个问题:

当一个祖先组件想要向他的子孙组件传值时甚至向多个子孙传递一样的值时,按照往常的方法,需要一层一层的向下进行传值而且多个子孙组件传递就更加繁琐,增加大量的代码量,那在这样的情景下如何让传值变得更加简单呢?

那么这时我们可以用到依赖注入的办法,他用到了vue给我提供的两个新的实例项,分别是provideinject

那么看下这两个实例项的使用方法:

provide 选项允许我们指定我们想要提供给后代组件的数据/方法。也就是说只要给祖先组件添加了这样一个实例项后,我们想要将祖先组件中需要提供给后代的数据或者方法都放到这个实例里面。
上代码

  // provide 必须是一个函数
  // this.articleId 是需要传递的数据
  // articleId 是将传递的数据命名
  provide: function() {
   
    return 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值