本篇文章給大家分享的是有關如何在vuex中使用Actions,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
Action 類似于 mutation,不同在于:
Action 提交的是 mutation,而不是直接變更狀態. Action 是異步的,mutation是同步的。
沿用vuex學習---簡介的案例:這里是加10 減1
1.在store.js 中 代碼為:
import Vue from 'vue'
import Vuex from 'vuex'
//使用vuex模塊
Vue.use(Vuex);
//聲明靜態常量為4
const state = {
count : 4
};
const mutations = {
add(state,n){
state.count +=n.a;
},
sub(state){
state.count--;
}
};
const actions = {
//2種書寫方式
addplus(context){ //可以理解為代表了整個的context
context.commit('add',{a:10})
},
subplus({commit}){
commit('sub');
}
};
//導出一個模塊
export default new Vuex.Store({
state,
mutations,
actions
})2.在App.vue中 代碼如下:
<template>
<div id="app">
<div id="appaaa">
<h2>這是vuex的示例</h2>
<p>組件內部count{{count}}</p>
<p>
<button @click = "addplus">+</button>
<button @click = "subplus">-</button>
</p>
</p>
</div>
</div>
</template>
<script>
//引入mapGetters
import {mapState,mapMutations,mapGetters,mapActions} from 'vuex'
export default {
name:'app',
data(){
return {
}
},
computed:{
...mapState([
"count"
]),
},
methods:{
...mapActions([
"addplus",
"subplus"
])
}
}
</script>
<style>
</style>以上就是如何在vuex中使用Actions,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。