VUE非父子组件间通信

新手上路,请多包涵

非父子组件间的值变化时的通知,没有事件!,怎么单纯的让一个子组件知道另外一个子组件中的某个值变化

clipboard.png父组件中有两个子组件

clipboard.pnglist接收父组件传过来的三个值

clipboard.png现在要点击list的某个图片时,detail可以得到img的值

clipboard.pngdetail 跟 home 的关系是这样的,这个时候怎么让detail知道 点击list时对应的img值并显示

clipboard.png 这是home页,有四个list

clipboard.png这是detail,由于不知道怎么获得对应的值,图片没显示出来

阅读 3.3k
2 个回答
  1. vuex里面定义一个currentImagestate,再定义一个changeCurrentImagemutation用于改变currentImage

  2. List.vue的click事件中调用$store.commit('changeCurrentImage', item.src)来设置vuex里的全局currentImage

  3. Detail.vue中用<img :src="$store.state.currentImage" >来显示。

具体实现参考vuex的官方文档

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题