Vuex提升学习篇

网友投稿 296 2023-02-27


Vuex提升学习篇

本文介绍了vuex 提升学习教程。如果本篇有看不明白的地方,请移步上一篇:Vuex 入门

上一篇我们讲了如何通过一些简单的动作来改变 store.js 中的数据对象,在实际工作中,这是完全无法满足工作需求的,所以这篇我们来说说如何做一些简单的流程判断。

自制vuex LOGO

一、比如说我现在有这么个需求,当 count < 5 的时候,就停止 count-- 。这就需要用到 actions

actions 定义要执行的动作,如流程的判断、异步请求

在 store.js 内的 actions 中

// 定义 actions ,要执行的动作,如流程的判断、异步请求

const actions ={

increment({commit,state}){

commit('increment')

},

decrement({ commit, state }) {

// **通过动作改变的数据,在此处来做判断是否提交**

if (state.count > 5) {

commihttp://t('decrement')

}

}

}

运行项目

二、通过 actions 模拟异步请求

1. 先在 App.vue 中定义好事件

//异步请求事件

2. 在 store.js 内的 actions 中添加 异步 Promise 事件

// 定义 actions ,要执行的动作,如流程的判断、异步请求

const actions ={

increment({commit,state}){

commit('increment')

},

decrement({ commit, state }) {

// **通过动作改变的数据,在此处来做判断是否提交**

if (state.count > 5) {

commit('decrement')

}

},

incrementAsync({commit,state}){

// 模拟异步操作

var a = new Promise((resolve,reject) => {

setTimeout(() => {

resolve();

}, 3000);

})

// 3 秒之后提交一次 increment ,也就是执行一次 increment

a.then(() => {

commit('increment')

}).catch(() => {

console.log('异步操作失败');

})

}

}

运行项目

三、获取数据状态

假如我们需要知道数据的奇偶数,那么就需要在 getters 中来判断。

getters 中可以获取经过处理后的数据,从而来判断状态

在http:// store.js 的 getters 中加入判断奇偶数的方法

var getters={

count(state){

return state.count

},

EvenOrOdd(state){

return state.count%2==0 ? '偶数' : '奇数'

}

}

在 App.vue 中加入

判断奇偶数.gif

如有不明白之处,还请留言交流,或者直接翻看 API


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:利用Java8 Optional如何避免空指针异常详解
下一篇:java实现多文件上传至本地服务器功能
相关文章

 发表评论

暂时没有评论,来抢沙发吧~