uniapp 使用vuex
示列:
根目录下新建store/index.js
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
const store = new Vuex.Store({
state:{
hasLogin:false,
userInfo:{}
},
mutations:{
login(state,provider){
state.hasLogin = true
state.userInfo.username = provider.username
state.userInfo.uid = provider.username
state.userInfo.avatar = provider.avatar
uni.setStorage({
key:'userInfo',
data:provider
})
},
logout(state){
state.hasLogin = false
state.userInfo.avatar = {}
uni.removeStorage({
key:'userInfo'
})
}
}
})
export default storemain.js 引入
import store from './store/index.js' Vue.prototype.$store = store //vuex状态管理
使用 vuex mapState mapMutations 函数
import {mapState,mapMutations} from 'vuex'
computed:{
...mapState(['hasLogin','userInfo'])
}
methods: {
...mapMutations(['login','logout'])
}