vuex 在非组件中调用 actions 方法

一般情况下调用 actions.js 中的方法都是在组件中,如果想在非组件中调用,则需要如下方式

在组件中

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import {mapActions} from 'vuex'

export default {
	methods: {
		...mapActions([
			'setUserInfo'
		])
	},
	init() {
		let user = {}
		
		this.setUserInfo(user)
	}
}

在非组件中

1
2
3
4
5
6
7
import store from 'store'

function init() {
	let user = {}

	store.dispatch('setUserInfo', user)
}