vuex常用设计套路

由于时间太晚了,我早已是睡眼朦胧,不多说了,直接上代码。

大家都知道vuex的state、getters、mutations、actions吧,不知道的也没关系,官网走一波。

先看整体目录结构:

下面我们来看看每个文件中是怎么操作的:

index.js:

import Vue from 'vue'
import Vuex from 'vuex'
import state from './state'
import * as getters from './getters'
import mutations from './mutations'
import * as actions from './actions'

Vue.use(Vuex)

export default new Vuex.Store({
  state,
  getters,
  mutations,
  actions
})

state.js

const state = {
    user: {
        name: 'liuhua',
        age: 18
    }
}
export default state

getters.js

export const getUserInfo = state => state.user;

mutations.js

const mutations = {
    ChangeName(state, newName) {
        state.user.name = newName
    },
    ages(state,amount){
        state.user.age = amount
    }
}

export default mutations

actions.js

export const changeAge = function ({commit},newage){
    setTimeout(function(){
        console.log('延迟2s')
        commit('ages',newage)
    },1000)
}

至于mutations_type个人不喜欢用,仅此而已。如何项目够大,建议用moudle区分模块。此套路适合中小型项目。

就这样,睡觉,不然会猝死的。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值