众所周知,在组件式开发中,最大的痛点就在于组件之间的通信。在 Vue 中,Vue 提供了各种各样的组件通信方式,从基础的 props/$emit 到用于兄弟组件通信的 EventBus,再到用于全局数据管理的 Vuex。

在这么多的组件通信方式中,provide/inject 显得十分阿卡林(毫无存在感)。但是,其实 provide/inject 也有它们的用武之地。今天,我们就来聊聊 Vue 中 provide/inject 的应用。

何为 provide/inject

provide/inject 是 Vue 在 2.2.0 版本新增的 API,官网介绍如下:

这对选项需要一起使用,以允许一个祖先组件向其所有子孙后代注入一个依赖,不论组件层次有多深,并在起上下游关系成立的时间里始终生效。如果你熟悉 React,这与 React 的上下文特性很相似。

官网的解释很让人疑惑,那我翻译下这几句话:

provide 可以在祖先组件中指定我们想要提供给后代组件的数据或方法,而在任何后代组件中,我们都可以使用 inject 来接收 provide 提供的数据或方法。

举个官网的

聊聊 Vue 中 provide/inject 的应用相关推荐

  1. vue 中provide的用法_聊聊Vue中provide/inject的应用详解

    众所周知,在组件式开发中,最大的痛点就在于组件之间的通信.在 Vue 中,Vue 提供了各种各样的组件通信方式,从基础的 props/$emit 到用于兄弟组件通信的 EventBus,再到用于全局数 ...

  2. axios 超时_聊聊 Vue 中 axios 的封装

    axios 是 Vue 官方推荐的一个 HTTP 库,用 axios 官方简介来介绍它,就是: Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中. 作为一 ...

  3. vue 中provide的用法_Vue多级组件provide/inject使用详解

    这次给大家带来Vue多级组件provide/inject使用详解,Vue多级组件provide/inject使用的注意事项有哪些,下面就是实战案例,一起来看一下. provide / inject 是 ...

  4. vue 中provide的用法_浅谈vue中provide和inject 用法

    一.概念解析 成对出现:provide和inject是成对出现的 作用:用于父组件向子孙组件传递数据 使用方法:provide在父组件中返回要传给下级的数据,inject在需要使用这个数据的子辈组件或 ...

  5. vue 中provide的用法_vue中provide和inject使用

    1.provide/inject有什么用? 常用的父子组件通信方式都是父组件绑定要传递给子组件的数据,子组件通过props属性接收,一旦组件层级变多时,采用这种方式一级一级传递值非常麻烦,而且代码可读 ...

  6. vue 中provide的用法_vue高阶用法之provide与inject

    1.这个两个必须同时使用,当父组件定义的方法,子组件也想使用怎么办了,这时候就可以派上用场了 provide:Object | () => Object inject:Array | { [ke ...

  7. vue中provide和inject 用法

    我们平时在开发的时候,最常用的父子组件通信方式就是父组件绑定要传递给子组件的数据,然后子组件通过props属性接收.但是一旦组件层级变多时,采用这种方式一级一级传递值非常麻烦,而且代码可读性不高,不便 ...

  8. vue 中provide的用法_[转]浅谈vue中provide和inject 用法

    provide:Object | () => Object inject:Array | { [key: string]: string | Symbol | Object } provide ...

  9. vue 中provide的用法_vue中的provide和inject

    阅读element-ui源码,发现在设计子组时件用到了inject属性,随即查了一下官方文档,得知vue在2.2.0版本里新增了provide / inject: provide 和 inject 主 ...

最新文章

  1. Python Django 根路由命名空间URL解析方式代码示例
  2. 文件的使用python_python-文件的使用
  3. boss直聘账号异常登不上_【苹果IOS游戏账号分享】据说是最欢乐的2D冒险游戏?Q萌有趣,好不好玩你说了算——惊奇剑士...
  4. android时间最大,Android TimePickerDialog设置最大时间
  5. 一周时间摸清一个行业
  6. wx-charts 微信小程序图表插件
  7. java httpclient4_httpclient4使用说明
  8. 方便使用FFMPEG的经验
  9. Mac配置adb笔记,彻底解决zsh: command not found: adb问题
  10. Win7 64位系统下Auto CAD 2010注册激活,出现警告:Make sure you can write to current directory...
  11. 庄辰超:“去哪儿”的大生意
  12. Frank-wolfe算法多OD对matlab实现
  13. C语言pow()函数的运用(x的y次幂)
  14. 湘潭大学c语言大作业难过吗,C语言程序设计参考答案(湘大出版社)
  15. 在python中定义函数时不需要声明函数参数的类型_python定义函数时默认参数注意事项...
  16. Perl函数及参数介绍
  17. 阿里云服务器怎么扩容
  18. 关于64位整型int64_t
  19. siki学院愤怒的小鸟脚本
  20. PC抖音作品批量去水印器

热门文章

  1. Mac 终端命令汇总
  2. Echarts使用map3D+visualMap 实现地图下钻,区域高亮状态下变高
  3. SCANDISK命令详解与使用方法
  4. TFN F7 M1 光时域反射仪 多模OTDR 光纤测试仪 高精度 触摸屏 波长850/1300nm
  5. 计算机课程布置作业,计算机基础课程作业布置与批改方式-计算机基础课程有哪些.pdf...
  6. 计算机网络的互联设备主要有,网络互联设备主要有哪些?各有哪些特点?
  7. 记录又一次实战GetShell
  8. 芯片封装中的POD是什么意思?用在哪里
  9. 常见而又容易被中小企业忽视的六个网络安全漏洞
  10. UI设计教程之常见的APP小图标类型以及用途梳理