为了账号安全,请及时绑定邮箱和手机立即绑定

watch 有时候会监听不到

watch 有时候会监听不到

弑天下 2019-03-07 18:15:27
因为公司不能带源码出来,所以这里就用文字描述这个问题了;在父组件里,有上下两个子组件,上面的子组件是搜索栏,下面的组件是ehcart图表,用户选完搜索项后点击搜索向后台请求数据,用watch监听请求回来的数据,一旦有数据返回,立马存入vuex的state中;下面的echart组件同时也监听这个state,一旦数据发生变化,就调用我封装的echart函数,将数据渲染出来,有几个页面都用到了这两个组件,而且页面都是一模一样,只是接口不同,返回的数据不同;问题就来了,在其他页面都是好好地,但是其中的某一个页面的watch监听事件没有触发,我用vue的调试工具发现vuex中的数据明明改变了,但是却并没有触发watch事件,如果连续在这几个并列的页面中来回切换,这个watch事件就会偶然触发一两次,刷新页面也可以触发;百度后发现要用watch监听数组要用深度监听,不然没有效果,但是我其他页面返回的数据也是数组啊,只是字段名称不一样而已,不知道为什么会出现这样的问题
查看完整描述

1 回答

?
郎朗坤

TA贡献1921条经验 获得超9个赞

我也碰到过这样的问题,最后改用事件总线eventBus实现


查看完整回答
反对 回复 2019-03-26
  • 1 回答
  • 0 关注
  • 875 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信