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 store
main.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']) }