zoukankan      html  css  js  c++  java
  • vue中状态管理vuex的使用分享

    一、main.js中引入 store

      import store from './store'
      window.HMO_APP = new Vue({
    router,
    store,
    render: h => h(App)
    }).$mount('#app-box')

    二、新建store文件夹

      index.js为入口js文件

      

    import Vue from 'vue'
    import Vuex from 'vuex'
    import user from './modules/user'
    import getters from './getters'

    Vue.use(Vuex)

    const store = new Vuex.Store({
    modules: {
    user
    },
    getters
    })

    export default store



    三、新建user.js文件夹,用户保存信息



    user.js文件

    import $ajax from '../../utils/fetch'
    const user = {
    state: {
    info: '', // 用于保存用户信息

    },

    mutations: {
    SET_USER_INFO: (state, info) => {
    state.info = info
    },

    },

    actions: {
    setUserInfo ({commit}, info) {
    commit('SET_USER_INFO', info)
    },
    loginBySession ({commit, state, dispatch}) {
    return new Promise((resolve, reject) => {
    $ajax.get('/denglujiekou', data => {
    dispatch('setUserInfo', data)
    resolve(data)
    }, err => {
    reject(err)
    })
    })
    },

    }
    }

    export default user
     

    四、新建getter.js文件夹,用户获取状态管理里面的信息
    
    
    const getters = {
    userInfo: state => state.user.info,

    }
    export default getters

    五、js中使用store方法

     
    import store from '../store/index'
    store.getters.idInfo



  • 相关阅读:
    ASP.NET MVC 动态加载图像
    ASP.NET:以域用户身份访问网络资源
    ASP.NET MVC 动态加载 *.ascx
    4月
    3月
    2月
    每天充点小能量
    每天进步一点点
    FreeMarker标签与使用
    eclipse启动tomcat, http://localhost:8080无法访问
  • 原文地址:https://www.cnblogs.com/shuihanxiao/p/10300406.html
Copyright © 2011-2022 走看看