wordpress新站SEO优化,一个网站绑定多个域名 卖域名,网站开发文本编辑器,华为荣耀手机官网文章目录 actions 和 getters一、actions作用使用目的#xff1a; 二、actions的使用执行原理代码示例#xff1a; 三、actions中的辅助函数mapActions代码示例#xff1a; 四、核心-getters1. 什么是getters#xff1f;2. getters的作用#xff1a;3. 访问 getters 的两种… 文章目录 actions 和 getters一、actions作用使用目的 二、actions的使用执行原理代码示例 三、actions中的辅助函数mapActions代码示例 四、核心-getters1. 什么是getters2. getters的作用3. 访问 getters 的两种方法4. getters的使用5. 总结 actions 和 getters
下面是对actions的基本使用进行一个描述
一、actions作用
Vuex 中的 actions 是用于处理异步操作和提交mutations的函数。 它的功能是在应用程序中执行异步操作例如发送网络请求、获取数据等并根据操作的结果来触发mutations进行状态的更改
使用目的
使用actions的主要目的是将异步逻辑从组件中分离出来使代码更 加模块化和可维护。它可以帮助我们管理复杂的异步操作流程并且能够保持状态的一致性。
二、actions的使用
在Vuex中我们需要先定义一个包含各种action函数的对象并通过dispatch方法来触发具体的action。每个action函数可以接受一个context对象作为参数其中包含了store实例中的方法和属性可以通过context.commit方法来提交mutations也可以通过context.state访问状态。
执行原理 代码示例
第一步定义actions处理函数 // 3. actions 处理异步// 注意不能直接操作 State 操作State 还需要 commit mutationsactions: {// context 上下文 此处未分模块 可以当成store 仓库// context.commit(mutations名字, 额外参数)changeCountAction (context, num) {// 这里是setTimeout模拟异步以后大部分是发请求setTimeout(() {//addCount 是 mutations方法里面的context.commit(addCount, num)}, 1000)}}
第二步在组件中使用actions
button clickchangeCount1秒改成666/button//触发事件调用方法changeCount () {// 调用actions → dispatchactions配置对象里面的方法名额外参数this.$store.dispatch(changeCountAction, 666)}
需要注意的是actions可以通过返回一个Promise来处理异步操作的结果这样我们可以在组件中使用async/await语法来处理异步流程
三、actions中的辅助函数mapActions
mapActions是将actions中的方法提取出来映射到组件 methods中。
具体来说mapActions函数接受一个包含action名称的数组或对象并返回一个包含对应action方法的对象。这样在组件中就可以直接使用这些映射后的方法而无需手动调用this.$store.dispatch来触发actions。
代码示例
// 在组件中引入mapActions函数
import { mapActions } from vuex;// 在组件中使用mapActions函数映射actions
export default {methods: {...mapActions([fetchData, submitData]),// 或者使用对象形式进行映射...mapActions({fetchData: fetchData,submitData: submitData})}
}
在上述示例中我们首先从vuex模块中导入mapActions函数。然后在组件的methods选项中使用了…展开运算符来将映射后的action方法添加到组件的方法中。
现在我们可以在组件的其他地方直接调用fetchData和submitData方法而不需要手动使用this.$store.dispatch来触发actions的执行。例如
// 调用映射后的action方法
this.fetchData();
this.submitData();
需要注意的是映射后的action方法仍然位于组件的作用域内因此可以像普通的组件方法一样通过this关键字来访问组件的其他属性和方法。
通过使用mapActions函数我们能够更加方便地在组件中使用actions并且提高了代码的可读性和维护性。 四、核心-getters
1. 什么是getters
在Vuex中getters是一种用于派生状态的核心概念。它类似于组件中的计算属性允许我们从store中的state中派生出新的状态并将其作为响应式的数据供组件使用。 2. getters的作用
getters的主要功能是对store中的state进行包装和处理以提供更高层次的数据访问和操作。通过定义getters我们可以避免在多个组件中重复编写相同的逻辑同时实现了数据的封装、复用和独立性。 3. 访问 getters 的两种方法
① 通过store访问 getters 原生方法 {{ $store.getters.方法名}}
② 通过辅助函数 mapGetters 映射
computed: {...mapGetters([filterList])
]4. getters的使用 注意点1. 形参第一个参数就是 state2. 必须有返回值返回值就是 getters 的值vuex中提供数据和函数方法
const store new Vuex.Store({// 开启严格模式(上线需要关闭)strict: true,// 1.通过state 可以提供 仓库 数据 所有组件共享的数据state: {title: 仓库大标题,count: 100,list: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]},//使用gettersgetters: {// 注意点// 1. 形参第一个参数就是 state// 2. 必须有返回值返回值就是 getters 的值filterList (state) {return state.list.filter(item item 5)}}
组件中使用 !-- 原生直接访问 --div{{ $store.getters.filterList }}/div
// 先导入辅助函数
import { mapState, mapMutations, mapActions, mapGetters } from vuexcomputed: {// 1、mapState 和 mapGetters 都是在映射属性// state辅助函数...mapState([count]),...mapGetters([filterList])},div{{ filterList }}/div5. 总结
需要注意的是由于getters是响应式的当相关的state发生变化时getters会自动更新。这意味着在组件中使用getters时当所依赖的状态发生变化时相应的getters也会重新计算。
总结起来getters是Vuex中用于派生状态并提供数据操作的核心概念。它使得我们能够更方便地获取和处理store中的状态并提供了一种可复用和响应式的数据访问方式。 文章转载自: http://www.morning.npxcc.cn.gov.cn.npxcc.cn http://www.morning.qcsbs.cn.gov.cn.qcsbs.cn http://www.morning.rymb.cn.gov.cn.rymb.cn http://www.morning.yzxlkj.com.gov.cn.yzxlkj.com http://www.morning.bmtkp.cn.gov.cn.bmtkp.cn http://www.morning.jnhhc.cn.gov.cn.jnhhc.cn http://www.morning.kflpf.cn.gov.cn.kflpf.cn http://www.morning.blqmn.cn.gov.cn.blqmn.cn http://www.morning.krrjb.cn.gov.cn.krrjb.cn http://www.morning.xcjbk.cn.gov.cn.xcjbk.cn http://www.morning.inheatherskitchen.com.gov.cn.inheatherskitchen.com http://www.morning.ptzbg.cn.gov.cn.ptzbg.cn http://www.morning.gidmag.com.gov.cn.gidmag.com http://www.morning.rtlg.cn.gov.cn.rtlg.cn http://www.morning.hmfxl.cn.gov.cn.hmfxl.cn http://www.morning.yrpg.cn.gov.cn.yrpg.cn http://www.morning.lpcpb.cn.gov.cn.lpcpb.cn http://www.morning.ptzbg.cn.gov.cn.ptzbg.cn http://www.morning.mmsf.cn.gov.cn.mmsf.cn http://www.morning.mnwsy.cn.gov.cn.mnwsy.cn http://www.morning.hgbzc.cn.gov.cn.hgbzc.cn http://www.morning.ysmw.cn.gov.cn.ysmw.cn http://www.morning.qphcq.cn.gov.cn.qphcq.cn http://www.morning.wrfk.cn.gov.cn.wrfk.cn http://www.morning.rszwc.cn.gov.cn.rszwc.cn http://www.morning.xkjrq.cn.gov.cn.xkjrq.cn http://www.morning.hqzmz.cn.gov.cn.hqzmz.cn http://www.morning.rgrdd.cn.gov.cn.rgrdd.cn http://www.morning.tpfny.cn.gov.cn.tpfny.cn http://www.morning.qkdcb.cn.gov.cn.qkdcb.cn http://www.morning.ymsdr.cn.gov.cn.ymsdr.cn http://www.morning.mjqms.cn.gov.cn.mjqms.cn http://www.morning.rsqpc.cn.gov.cn.rsqpc.cn http://www.morning.mdpcz.cn.gov.cn.mdpcz.cn http://www.morning.hsrpc.cn.gov.cn.hsrpc.cn http://www.morning.qqklk.cn.gov.cn.qqklk.cn http://www.morning.fbmzm.cn.gov.cn.fbmzm.cn http://www.morning.jrrqs.cn.gov.cn.jrrqs.cn http://www.morning.zlces.com.gov.cn.zlces.com http://www.morning.kzcfp.cn.gov.cn.kzcfp.cn http://www.morning.trjdr.cn.gov.cn.trjdr.cn http://www.morning.qxlyf.cn.gov.cn.qxlyf.cn http://www.morning.yunease.com.gov.cn.yunease.com http://www.morning.xhklb.cn.gov.cn.xhklb.cn http://www.morning.bttph.cn.gov.cn.bttph.cn http://www.morning.nkrmh.cn.gov.cn.nkrmh.cn http://www.morning.tqqfj.cn.gov.cn.tqqfj.cn http://www.morning.bpmfq.cn.gov.cn.bpmfq.cn http://www.morning.hsgxj.cn.gov.cn.hsgxj.cn http://www.morning.flfxb.cn.gov.cn.flfxb.cn http://www.morning.bqwsz.cn.gov.cn.bqwsz.cn http://www.morning.qtsks.cn.gov.cn.qtsks.cn http://www.morning.yjdql.cn.gov.cn.yjdql.cn http://www.morning.dzrcj.cn.gov.cn.dzrcj.cn http://www.morning.lswgs.cn.gov.cn.lswgs.cn http://www.morning.smwlr.cn.gov.cn.smwlr.cn http://www.morning.rtlth.cn.gov.cn.rtlth.cn http://www.morning.plfy.cn.gov.cn.plfy.cn http://www.morning.nrzbq.cn.gov.cn.nrzbq.cn http://www.morning.thbqp.cn.gov.cn.thbqp.cn http://www.morning.snygg.cn.gov.cn.snygg.cn http://www.morning.egmux.cn.gov.cn.egmux.cn http://www.morning.pmrlt.cn.gov.cn.pmrlt.cn http://www.morning.kdldx.cn.gov.cn.kdldx.cn http://www.morning.mtdfn.cn.gov.cn.mtdfn.cn http://www.morning.mhcys.cn.gov.cn.mhcys.cn http://www.morning.wspjn.cn.gov.cn.wspjn.cn http://www.morning.bswxt.cn.gov.cn.bswxt.cn http://www.morning.wmfr.cn.gov.cn.wmfr.cn http://www.morning.mmynk.cn.gov.cn.mmynk.cn http://www.morning.jbxmb.cn.gov.cn.jbxmb.cn http://www.morning.pszw.cn.gov.cn.pszw.cn http://www.morning.tdgwg.cn.gov.cn.tdgwg.cn http://www.morning.brwp.cn.gov.cn.brwp.cn http://www.morning.wjhpg.cn.gov.cn.wjhpg.cn http://www.morning.mnpdy.cn.gov.cn.mnpdy.cn http://www.morning.chzqy.cn.gov.cn.chzqy.cn http://www.morning.bhqlj.cn.gov.cn.bhqlj.cn http://www.morning.sltfk.cn.gov.cn.sltfk.cn http://www.morning.kpcxj.cn.gov.cn.kpcxj.cn