如果我们需要把父组件的值传递给子组件,而且子组件可能存在层层嵌套,那么就可以使用provide+inject的方法来实现组件之间的通信
这里是父组件,将getReportData 里的值传到子组件
![在这里插入图片描述](https://img-blog.csdnimg.cn/897f13776a0745348ea84396a21a0b6d.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5YyX5rW355qE5aSn6bG8,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
这里是子组件,先用inject进行接收,然后通过computed传入这边的data,
最后再上面div中进行渲染,这样值就传过来了
![在这里插入图片描述](https://img-blog.csdnimg.cn/e499a2ff8db24facab294643a52b879f.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5YyX5rW355qE5aSn6bG8,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
小技巧:
如果我们需要传入的组件和值非常多,使用上面的方法时,就需要在每个组件都写这些代码,就会显得非常冗余,那么我们可以新建一个文件,将对数据输出和处理的方法进行封装,然后在页面进行引用。
这样在页面中只需要关心拿到的结果对数据进行渲染。
例:
-
新建一个名