zoukankan      html  css  js  c++  java
  • vuex 使用 modules 标准写法 (vuex模块化)

    soter 结构

    //soter 结构
    ─store
    │  getters.js
    │  index.js
    │
    └─modules
    user.js
    

    modules

    /store/modules/user.js
    
    /**
     * 用户信息
     * */
    const user = {
        state: {
            userInfo:{},//用户信息
        },
        mutations: {
            SET_USER_INFO(state, userInfo) {
                state.userInfo = userInfo
            },
        },
        actions: {
            SetUserInfo({commit}, userInfo) {
                commit('SET_USER_INFO', userInfo)
            },
        }
    }
    
    export default user
    

    getters

    /store/getters.js
    
    /**
     * 全局数据响应写在这
     * */
    const getters = {
        userInfo: state => state.user.userInfo
    }
    export default getters
    

    store 入口文件

    /store/index.js
    /**
     * store 总线
     * */
    
    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
    

    把store挂载到vue对象上

    //引入使用
    
    import store from './store';
    
    store.dispatch('SetUserInfo',{name:'张三'}) //调用
    
    new Vue({
        router,
        store,
        components:{App},
        template:'<App/>'
    }).$mount('#app')
    

      

    取值

    {{$store.getters.userInfo}} //响应模式
    {{$store.state.user.userInfo}} //直接取值
    

      

  • 相关阅读:
    微信小程序购物商城系统开发系列-目录结构
    微信小程序购物商城系统开发系列-工具篇
    如何用js获取浏览器URL中查询字符串的参数
    Search for a Range
    Search in Rotated Sorted Array
    permutation递归方法
    Permutations
    next permutation
    4Sum
    3Sum Closest
  • 原文地址:https://www.cnblogs.com/yz-blog/p/13566449.html
Copyright © 2011-2022 走看看