vuex學習之Actions的用法詳解
更新時間:2017年08月29日 09:46:24 作者:風起了--
本篇文章主要介紹了vuex學習之Actions的用法詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
Action 類似于 mutation,不同在于:
Action 提交的是 mutation,而不是直接變更狀態(tài). Action 是異步的,mutation是同步的。
沿用vuex學習---簡介的案例:這里是加10 減1
1.在store.js 中 代碼為:
import Vue from 'vue'
import Vuex from 'vuex'
//使用vuex模塊
Vue.use(Vuex);
//聲明靜態(tài)常量為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');
}
};
//導(dǎo)出一個模塊
export default new Vuex.Store({
state,
mutations,
actions
})
2.在App.vue中 代碼如下:
<template>
<div id="app">
<div id="appaaa">
<h1>這是vuex的示例</h1>
<p>組件內(nèi)部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>
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Vue局部組件數(shù)據(jù)共享Vue.observable()的使用
隨著組件的細化,就會遇到多組件狀態(tài)共享的情況,今天我們介紹的是 vue.js 2.6 新增加的 Observable API ,通過使用這個 api 我們可以應(yīng)對一些簡單的跨組件數(shù)據(jù)狀態(tài)共享的情況,感興趣的可以了解一下2021-06-06
vue3實現(xiàn)無縫滾動列表效果(大屏數(shù)據(jù)輪播場景)
vue3-scroll-seamless 是一個用于 Vue 3 的插件,用于實現(xiàn)無縫滾動的組件,它可以讓內(nèi)容在水平或垂直方向上無縫滾動,適用于展示輪播圖、新聞滾動、圖片展示等場景,本文就給大家介紹了vue3實現(xiàn)無縫滾動列表效果,需要的朋友可以參考下2024-07-07
Vue?關(guān)于$emit與props的使用示例代碼
父組件使用 props 把數(shù)據(jù)傳給子組件,子組件使用 $emit 觸發(fā)父組件的自定義事件,今天通過示例給大家詳細介紹下Vue?關(guān)于$emit與props的使用,感興趣的朋友一起看看吧2022-03-03

