如何解决vue个组件之间的数据依赖问题?

问题描述:A组件中接口返回的有登录信息,在B组件中需要根据这个登陆信息去进行其他的操作
我现在的做法是把A组件中的登录信息存在一个全局的变量中,然后在B组件mounted中通过getList函数去获取这个全局变量。
现在有个问题就是,在B组件渲染完成之后A组件中的接口还没有请求成功,这时候就取不到返回的登录信息,等A组件接口请求成功并将值赋值给全局变量后,B组件不会再去执行getList这个方法所以视图还是没法渲染。
我自己想到一个解决办法就是给B组件中的getList方法加一个定时器延迟执行,也可以达到预期的效果,但总是感觉做法不是很合适,在这里请教一下大佬们有没有什么好的解决办法?
说明1.项目没有用到vuex2.之前用到过eventbus进行组件通信,但是因为B组件是一个公用组件,多个不同的路由会跳到这个组件,当路由切换的时候数据更新不上,所有最后用的就是定义全局变量的方式来传值
蝴蝶不菲
浏览 828回答 2
2回答

函数式编程

其实这种情况用vuex挺好的,可以完美解决你的需求,用上也不复杂store中定义模块用的时候import{mapGetters}from'vuex'computed:{...mapGetters(['name'])}{{name}}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript