action的基本定义
■官方强调了不要在Mutations中进行异步操作
- 但是某些情况,我们确实希望在vuex中进行一些异步操作,比如网络请求,必然是异步的,这个时候怎么处理呢?
- action类似于mutation,但是是用来代替mutation进行异步操作的
action的基本使用
■这里使用setTimeout来模拟异步操作,在一秒后修改state中info的值
- Action 函数接受一个与 store 实例具有相同方法和属性的 context 对象,因此你可以调用 context.commit 提交一个 mutation
- 也可以通过 context.state 和 context.getters 来获取 state 和 getters
■stroe下index.js中的代码
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
export default new Vuex.Store({
state: {
info:'xiu',
},
mutations: {
mUpdateInfo(state){
state.info = 'fan'
}
},
actions: {
aUpdateInfo(context){
setTimeout(() => {、
//提交到mutation进行处理
context.commit('mUpdateInfo')
},1000)
}
},
})
■在actions中定义异步操作的函数
- 但前面提到过,修改state中的数据要在mutations中进行
- 所以请求完成后action通过commit提交到mutation进行处理
■组件中的代码
<template>
<div class="about">
<h1>This is an about page</h1>
<h2>{{$store.state.info}}</h2>
<button @click="update()">修改</button>
</div>
</template>
<script>
export default{
name: 'About',
methods:{
update(){
//通过dispatch提交到action
this.$store.dispatch("aUpdateInfo")
},
}
}
</script>
■Actions 支持和mutations同样的载荷方式和对象方式进行分发
// 以载荷形式分发
store.dispatch('incrementAsync', {
amount: 10
})
// 以对象形式分发
store.dispatch({
type: 'incrementAsync',
amount: 10
})
■Action 通常是异步的,那么如何知道 action 什么时候结束呢?
- 首先,你需要明白 store.dispatch 可以处理被触发的 action 的处理函数返回的 Promise,并且store.dispatch 仍旧返回 Promise --->(Promise的使用)
actions: {
aUpdateInfo(context){
return new Promise((resolve,reject) => {
setTimeout(() => {
context.commit('mUpdateInfo')
resolve("请求完成")
},1000)
})
}
},
■现在可以在组件中通过.then()知道请求生么时候完成
update(){
this.$store
.dispatch("aUpdateInfo")
.then(res => {
console.log(res)
})
},
其他vuex文章
Vuex概念和作用解析
vuex-mutation同步函数
vuex-getters的使用
vuex-actions异步函数
vuex-modules的使用
buy anastrozole 1 mg generic arimidex without prescription buy arimidex 1mg online cheap
order naproxen 250mg online cheap lansoprazole over the counter order prevacid online
order clarithromycin 250mg pills catapres 0.1 mg ca order meclizine 25 mg pills
order albuterol 100 mcg online generic ciprofloxacin ciprofloxacin 1000mg for sale
buy tiotropium bromide 9mcg sale hytrin 1mg cheap order terazosin 5mg generic
montelukast price viagra cheap order sildenafil pills
buy pioglitazone generic viagra 100mg brand order sildenafil without prescription
cialis tablets order tadalafil 40mg order tadalafil
tadalafil 40 mg Real cialis slots casino games
stromectol us brand avlosulfon brand avlosulfon 100 mg
cheap adalat 10mg adalat price allegra 180mg canada
order generic altace buy generic ramipril 5mg arcoxia oral
roulette game casino online i need help with my essay
doxycycline canada doxycycline 200mg drug clindamycin for sale
research paper assistance buy sulfasalazine 500 mg pills sulfasalazine 500 mg pill
buy mesalamine 400mg generic mesalamine 800mg over the counter generic avapro 150mg
order olmesartan online cheap benicar buy online divalproex uk
clobetasol canada buy temovate sale cordarone 200mg sale
buy acetazolamide without prescription isosorbide tablet azathioprine 50mg oral
buy lanoxin 250mg order digoxin generic molnupiravir 200 mg usa
order coreg 25mg for sale order oxybutynin pills oral amitriptyline 50mg
buy amoxil 500mg generic amoxil 500mg generic where to buy ivermectin for humans
alendronate brand order furadantin generic motrin 600mg generic
buy dapoxetine 30mg pill order motilium 10mg online cheap domperidone usa
buy generic pamelor order paracetamol 500mg without prescription order paroxetine 10mg without prescription
indomethacin 50mg brand cenforce 100mg over the counter order cenforce 100mg generic
order pepcid 40mg online remeron without prescription buy mirtazapine 30mg for sale
buy doxycycline 100mg pill buy doxycycline generic cost of medrol
order ropinirole 2mg generic labetalol 100mg generic trandate order online
buy fenofibrate 160mg online cheap fenofibrate 200mg price purchase sildenafil without prescription
cheap nexium 40mg clarithromycin 250mg pill furosemide online order
cheap cialis 10mg Generic cialis cheap order viagra 50mg pill
order minocin 50mg pill terazosin ca order hytrin 5mg pill
cialis oral cheap viagra best drug for ed
brand metformin 1000mg order verapamil online tamoxifen 10mg generic
order provigil 200mg for sale promethazine uk promethazine generic
purchase serophene pill order generic prednisolone prednisolone 20mg cheap
purchase prednisone deltasone buy online amoxicillin 250mg ca
pills viagra pharmacy 100mg [url=https://nienalo.strikingly.com/#]drugstore online [/url]
canadian drugs online pharmacy drugstore online
shoppers drug mart canada https://nienalo.strikingly.com/
isotretinoin uk isotretinoin order purchase ampicillin sale
buy fildena generic oral sildenafil order propecia generic
stromectol 0.5 mg prednisone 40mg for sale prednisone 20mg pill
ondansetron 4mg oral amoxicillin brand bactrim 480mg ca
isotretinoin 40mg us order accutane 40mg online buy zithromax 500mg online
buy antihistamine pills onlin buy ventolin 4mg inhaler buy augmentin pill
provigil 200mg oral order metoprolol 100mg pills metoprolol 50mg pills
prednisolone 40mg sale oral lasix furosemide cost
oral dutasteride order orlistat 60mg generic order xenical 60mg pills
cheap doxycycline 200mg vardenafil 20mg pills acyclovir 400mg cost
canadian online pharmacies [url=https://www.windsurf.co.uk/forums/users/canadian-pharmacy-viagra-generic#]publix pharmacy online ordering [/url]
online canadian pharcharmy online pharmacy busted
canadian pharmacy online https://www.beastsofwar.com/forums/users/canadiancialis/
pharmacy discount [url=https://www.beastsofwar.com/forums/users/canadiancialis/#]canadian pharmacies [/url]
canadian drugstore online pharmacies in usa
canada drugs pharmacy http://climbingcoaches.co.uk/member-home/londondrugscanada/profile/
mexican pharmacies [url=https://www.buymeacoffee.com/pharmacies#]online pharmacies of canada [/url]
canada discount drug indian pharmacy
indian pharmacy https://amarutalent.edu.pe/forums/users/viagra-generic-canadian-pharmacy/
order imuran 25mg for sale buy imuran 25mg pill generic naprosyn
drugstore online [url=https://www.homify.com/ideabooks/9295471/canadian-pharmacy-drugs-online#]canadian prescriptions online [/url]
pharmacy in canada canadian pharmacy
24 hour pharmacy http://www.mjyoung.net/weblog/forums/users/canada-online-pharmacies/
pharmacies online [url=https://www.homify.com/ideabooks/9295471/canadian-pharmacy-drugs-online#]pharmacy [/url]
mexican border pharmacies online pharmacies
navarro pharmacy http://climbingcoaches.co.uk/member-home/londondrugscanada/profile/
buy generic viagra online [url=https://solorider.com/forums/users/canadian-pharmaceuticals/#]buy generic viagra online [/url]
approved canadian online pharmacies mexican pharmacies
discount pharmacies https://forum.melanoma.org/user/canadianpharmacyonline/profile/
online pharmacies in usa [url=https://amarutalent.edu.pe/forums/users/viagra-generic-canadian-pharmacy/#]pharmacy drugstore online [/url]
medical pharmacies online medicine shopping
buy generic viagra online https://www.cakeresume.com/me/online-drugs-without-prescriptions-canada
online pharmacy drugstore [url=https://forum.melanoma.org/user/canadianpharmacyonline/profile/#]cheap prescription drugs [/url]
canadian cialis online pharmacy
pharmacy online shopping https://www.homify.com/ideabooks/9295471/canadian-pharmacy-drugs-online
discount pharmacy [url=https://www.nzrelo.com/forums/users/canadianviagragenericpharmacy/#]order medicine online [/url]
prescription drugs from canada online medicine order discount
generic viagra online http://climbingcoaches.co.uk/member-home/londondrugscanada/profile/
canadian viagra generic pharmacy [url=https://www.passivehousecanada.com/members/online-drugs-without-prescriptions-canada/#]discount pharmacy [/url]
discount pharmacy canada pharmaceuticals online
medical pharmacies https://offcourse.co/users/profile/pharmacy-cheap-no-prescription
canadian prescriptions online [url=https://solorider.com/forums/users/canadian-pharmaceuticals/#]international pharmacy [/url]
prescription drugs from canada canadian pharmaceuticals
canadian pharmacies-247 https://www.buymeacoffee.com/pharmacies
canadian pharmacies [url=https://www.cakeresume.com/me/online-drugs-without-prescriptions-canada#]pharmacies [/url]
canadian viagra medical pharmacies
best online international pharmacies https://infogram.com/canadian-pharmaceuticals-online-safe-1h7g6k0gqxz7o2o?live
online pharmacy [url=https://www.cakeresume.com/me/online-drugs-without-prescriptions-canada#]viagra generic online pharmacy [/url]
pharmacy intern canadian pharmaceuticals
viagra generic online pharmacy http://www.mjyoung.net/weblog/forums/users/canada-online-pharmacies/
order oxybutynin 2.5mg pills order oxcarbazepine sale oxcarbazepine for sale
on line pharmacy [url=https://www.nzrelo.com/forums/users/canadianviagragenericpharmacy/#]pharmacy on line [/url]
24 hour pharmacy best online international pharmacies
canadian pharcharmy online https://solorider.com/forums/users/canadian-pharmaceuticals/
shoppers drug mart canada [url=https://solorider.com/forums/users/canadian-pharmaceuticals/#]pharmacies [/url]
mexican border pharmacies online medicine to buy
viagra generic canadian pharmacy http://www.mjyoung.net/weblog/forums/users/canada-online-pharmacies/
oral cefdinir purchase cefdinir pills buy generic protonix 20mg
mexican pharmacies [url=https://solorider.com/forums/users/canadian-pharmaceuticals/#]canadian pharmacies online [/url]
publix pharmacy online ordering canada pharmaceutical online ordering
pharmacy online https://www.buymeacoffee.com/pharmacies
online canadian pharcharmy [url=https://www.windsurf.co.uk/forums/users/canadian-pharmacy-viagra-generic#]approved canadian online pharmacies [/url]
prescription drugs from canada london drugs canada
canadian online pharmacy http://www.mjyoung.net/weblog/forums/users/canada-online-pharmacies/
online pharmacies in usa [url=http://www.mjyoung.net/weblog/forums/users/canada-online-pharmacies/#]canada pharmaceuticals online generic [/url]
canada drugs online canadian pharmacies
canadian pharmacy https://www.homify.com/ideabooks/9295471/canadian-pharmacy-drugs-online
canada drugs online [url=https://www.homify.com/ideabooks/9295471/canadian-pharmacy-drugs-online#]shoppers pharmacy [/url]
discount canadian drugs online pharmacy
canadian pharmaceuticals online https://www.beastsofwar.com/forums/users/canadiancialis/
canadian cialis [url=https://www.windsurf.co.uk/forums/users/canadian-pharmacy-viagra-generic#]pharmacy [/url]
best canadian online pharmacy canadian pharcharmy
pharmacy online shopping https://www.viki.com/users/canadianpharmaciess/about