Vuex 详细解释使用

Paste_Image.png

一个简单的点击跳转页面并设置标题的小粟子

vue文件:
//1.绑定jump触发事件
<template>
<li v-for="item in footArr" @click="jump(item.name,item.title)"></li>
</template>

//2.从actions和getters JS文件分别引入{changePage}和{getTitleName} (dispatch)
import {changePage} from "../js/vuex/actions";
import {getTitleName} from "../js/vuex/getters";

//3.jump触发changePage
methods:{
jump:function(name,title){
this.changePage(name,title);
}
}
}

//4.vuex调用actions方法绑定changePage到{changePage},调用getters方法绑定getTitleName到{getTitleName}
export default {
vuex:{
actions:{
changePage:changePage
},
getters:{
getTitleName:getTitleName
}
}
}

actions.js
//5.{changePage}绑定dispatch再调用'INCREMENT'方法
export const changePage=({dispatch},pageName,pageTitle)=>{
dispatch('INCREMENT',pageName,pageTitle);
};

store.js
//引入并调用vuex
var Vue=require("vue");
var Vuex=require("vuex");
Vue.use(Vuex);
//设置state对象(用于状态保存)
var state={
pageName:"app",
title:"首页"
};
//6.设置mutations 的INCREMENT方法(用于更改状态)
var mutations = {
INCREMENT(state,pageName,pageTitle){
state.pageName=pageName;
state.title=pageTitle;
}
};
//抛出状态模块
export default new Vuex.Store({
state,
mutations
})

getters.js
//7.最后利用 actions -> changePage->'INCREMENT'->state.title=pageTitle这个过程,得到当前状态的state.title
export default (state) =>state.pageName;
export const getTitleName = (state) =>state.title;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 安装 npm npm install vuex --save 在一个模块化的打包系统中,您必须显式地通过Vue.u...
    萧玄辞阅读 2,963评论 0 7
  • vuex 场景重现:一个用户在注册页面注册了手机号码,跳转到登录页面也想拿到这个手机号码,你可以通过vue的组件化...
    sunny519111阅读 8,035评论 4 111
  • Vuex 的学习记录 资料参考网址Vuex中文官网Vuex项目结构示例 -- 购物车Vuex 通俗版教程Nuxt....
    流云012阅读 1,472评论 0 7
  • Vuex是什么? Vuex 是一个专为 Vue.js应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件...
    萧玄辞阅读 3,148评论 0 6
  • 这两天在做Vue移动端的项目,正好用到了Vuex,记录一下相关知识。 一、安装 npm yarn Vuex是Vue...
    婷楼沐熙阅读 7,705评论 2 2