0
点赞
收藏
分享

微信扫一扫

【Vue】如何使用vuex解决兄弟组件传值?

DYBOY 2022-09-25 阅读 149

目录

 vuex全局数据管理

vuex介绍

组件关系和通信方案

vuex使用场景

vuex使用流程

vuex核心概念-state

getters派生状态(计算属性)

vuex核心概念-Mutations

vuex辅助函数-mapState

vuex核心概念actions

actions介绍

vuex核心概念modules

使用modules语法如下

访问数据和修改数据的调整

mapState的其他用法

Vuex-辅助函数mapState对数据重命名

Vuex-map函数用法汇总

vuex使用总结


vuex全局数据管理

vuex介绍

组件关系和通信方案

序号组件关系数据通信
1父子关系子传父:$emit ; 父传子:props
2非父子关系eventBus: $on + $emit
3非父子关系vuex

vuex使用场景

vuex使用流程

vuex核心概念-state

getters派生状态(计算属性)

语法如下:

1.现在getters中声明一个计算属性

new Vuex.store({
  // 省略其他...
  getters: {
    // state 就是上边定义的公共数据state
    计算属性名: function(state) {
      return 要返回的值
    }
  }
})

2.使用getter中的计算属性

$store.getters.getter的名字

vuex核心概念-Mutations

vuex辅助函数-mapState

vuex核心概念actions

actions语法如下:

(1)定义格式

  • 这个地方的载荷一般为ajax接口需要的参数,如果没有就不用传

new Vuex.store({
  // 省略其他...
  actions: {
    // context对象会自动传入,它与store实例具有相同的方法和属性
    action的名字: function(context, 载荷) {
      // 1. 发异步请求, 请求数据
      
      // 2. commit调用mutation来修改数据
      
      // context.commit('mutation名', 载荷)
    }
  }
})

(2)调用格式

  • 在组件中通过this.$store.dispatch('actions的名字', 参数)来调用action

vuex核心概念modules

mapState的其他用法

vuex使用总结

 

举报

相关推荐

0 条评论