mutation与action
mutation
作用: 更改state的状态
说明: 每个mutation对象都有字符串类型(type)与回调函数,在回调函数内进行状态修改,回调函数的第一个参数为state
eg:
mutations: { changeMainOption (state, index) { state.preMainOption= index; }, changeShade(state, type){ state.mainShade= type; }, changeprePerser(state, _index){ state.prePerser= _index; } }
调用方式:
1.载荷风格
this.$store.commit('changeMainOption', 1)
//index为1
2.对象风格
this.$store.commit({type: 'changeMainOption', anyName: 1})
//index为{type: 'changeMainOption', anyName: 1}
注意:
mutation必须是同步函数,
mutation第二个参数在载荷风格时为commit的第二个参数,对象风格时为commit的对象参数。
action
功能: 提交mutation,可包含异步操作
说明: action函数接收一个与store有相同属性方法的实例context来提交mutation
eg:这
actions: { toChangeMainOption (context){ setTimeout(()=> {context.commit('changeMainOption', 1)}, 1000) }, toChangeMainOption2 ({commit}){ //es6参数解构写法 commit('changeMainOption', 2) } }
调用方式:
1.载荷风格
this.$store.dispatch(''toChangeMainOption", {val: 1})
2.对象风格
this.$store.dispatch({type: ''toChangeMainOption", val: 1})
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?