18、组件信息通讯祖先后代——provide和inject
2022-04-01 12:42:43 0 举报
AI智能生成
vue
作者其他创作
大纲/内容
执行上下文方案
让所有需要通信的组件共同举杯一个祖先元素,这样就可以基于 provide 和 inject 实现祖先和后代之间的通信
1、把需要通信的“公共信息”,放在祖先元素上管控,以及需要修改这些“公共信息”的方法也在祖先元素上
2、后代元素想要使用,直接基于 inject 注册使用即可
原理
定义
1、祖先组件基于 provide 注册需要供后代组件使用的数据和方法
2、后代组件基于 inject 声明需要使用的数据并调取使用
操作步骤
provide中的信息没有放在vm实例上,不是响应式数据;数据存在在this._provided属性中;
1、provide 注册数据
2、inject 声明调取
对应代码
我们会创建响应式状态信息先存储公共信息,让PROVIDE中存储的是状态信息:以后只要我们把状态信息修改了,存储在祖先PROVIDE中的信息也会跟着修改;
需要保证PROVIDE中存储的数据是可被监控的,所以DATA中存储的数据需要以对象的方式存储,这样才能保证对象中的每个数据也是被监控的
注意
组件信息通讯祖先与后代
0 条评论
回复 删除
下一页