vuex状态管理器初级版本(登录状态)

定义状态管理器:首先要在main.js中注册store

import Vue from 'vue'
import App from './App.vue'
import './registerServiceWorker'
import router from './router'
import store from './store'

Vue.config.productionTip = false

new Vue({
  router,
  store,
  render: h => h(App)
}).$mount('#app')

// src/store/index.js 定义状态

import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
export default new Vuex.Store({
  state: {
    // 共享的状态
    // 页面刷新,状态管理器的状态会重置 ---- 需求  ---- 保留
    loginState: localStorage.getItem('loginState') === 'true' || false
  },
  mutations: { // 唯一改变数据的方式就是显示的提交mutation (提交-组件/actions)
    changeLoginState (state, data) {
      state.loginState = data
    }
  }
})

登录时保存状态(把true保存到状态管理器)


登录状态

底部组件获得登录状态


使用$store获取

退出登录 点击退出登录,把false保存到状态管理器,把localStorage清空,然后跳转到登录界面
退出登录
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容