前端非父子怎么用vuex 传参?
时间: 2023-09-15 09:15:17 浏览: 85
Vue非父子组件之间传值
在前端非父子组件中使用 Vuex 传参,可以通过在组件中使用 `mapActions` 和 `mapState` 方法来获取和修改 store 中的数据,然后在需要传递参数的地方使用 `this.$store.dispatch` 方法来触发 store 中的 action,并将需要传递的参数作为 payload 传递给 action。
例如,在组件中获取 store 中的数据:
```
import { mapState, mapActions } from 'vuex'
export default {
computed: {
...mapState({
count: state => state.count
})
},
methods: {
...mapActions([
'increment',
'decrement'
])
}
}
```
然后,在需要传递参数的地方调用 action:
```
this.$store.dispatch('increment', payload)
```
其中,`payload` 为需要传递的参数。在 action 中可以通过 `context` 对象的 `payload` 属性来获取这个参数:
```
increment ({ commit, state }, payload) {
commit('increment', payload)
}
```
阅读全文