当前位置: 首页 > article >正文

vuex 基础使用

1、封装使用

在项目中的 Store 文件夹下创建 modules 文件夹 getters.js index.js  然后如下:

 modules 文件夹下创建 一个 index.js 文件 存放需要的功能方法

// 写一个简单的菜单切换,获取当前点击菜单的索引
const Index = {
    state: {
        menuIndex: 0,
    },
    actions: {
        
    },
    mutations: {
        onChange(state, value) {
            state.menuIndex= value;
        }
    }
  };
  
  export default Index ;
  

在 getters.js  中引入 上边的js文件,如下:

const getters = {
  // 引入菜单切换的方法
  menuIndex: state => state.index.menuIndex,
  
};
export default getters;

在 index.js 中引入使用

import { createStore } from 'vuex';
import aio from './modules/index';
import getters from './getters';

const store = createStore({
  modules: {
    index,
  },
  getters,
});

export default store;

点击菜单时更新存放的索引值:

methods: {
    onLeftMenu(index){
        this.$store.commit('onChange',index)
     },
},

最后在其他地方引入使用最新的索引:

<template>
    <div id="footer-menu">
        <div>{{ menuIndex }}</div>
    </div>
</template>
<script>
import { mapGetters } from 'vuex';
export default {
    data(){
        return{
            
        }
    },
    computed: {
        ...mapGetters(['menuIndex']),
    },
    watch: {
        // 监听数据的变化(此处用于切换菜单获取索引)
        leftMenuIndex(newValue, oldValue) {
            console.log(newValue);
        }
    },
}
</script>

2、非封装使用

在项目中的 Store 文件夹下创建  index.js  然后如下:

import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    menuIndex: 0, // 菜单索引
  },
  getters: {
  },
  mutations: {
    onChange(state, value) {
       state.menuIndex= value;
    }
  },
  actions: {
  },
  modules: {
  }
})

至此完成!!!

测试有效!!!感谢支持!!!


http://www.kler.cn/news/290648.html

相关文章:

  • 网页版修改本地数据器:重新布局,引入 highlight.js高亮显示代码
  • 鸿蒙Next-拉起支付宝的三种方式——教程
  • 【Linux】理解Linux中的软链接与硬链接
  • 传统CV算法——背景建模算法介绍
  • 架构基础 -- 打点系统之FastAPI、python、grafana、prometheus实现
  • Unity数据持久化 之 文件操作(增删查改)
  • 【赵渝强老师】大数据生态圈中的组件
  • 8 自研rgbd相机基于rk3566之sensor图像解析与AWB算法原理
  • SQL语言的规则和规范
  • 盘点成都产业园前十,寻找你的理想创业地!
  • Pencils Protocol生态新进展,即将上线 Vault 产品
  • Python的list和numpy的array有什么区别?
  • 2024自动化测试面试真题(附答案)!
  • 基于FPGA的OV5640摄像头图像采集
  • centOS如何查看并放行防火墙3306端口
  • 无人机喊话器详解!!!
  • flannel,etcd,docker
  • Jmeter(十四)Jmeter分布式部署测试
  • LeetCode - 10 正则表达式匹配
  • C#文件的输入和输出
  • MATLAB生成COE文件
  • Java类和对象之构造方法与对象创建之计算数学中的分数值
  • 谈谈AI领域的认知误区、机会点与面临的挑战
  • 如何对 PDF 进行密码保护
  • 微服务架构下的服务治理实现方案详解
  • Nginx源码阅读1-内存池
  • Linux驱动(五):Linux2.6驱动编写之设备树
  • 传统CV算法——图像基本操作与形态学操作
  • 【软件技巧】第35课,软件逆向安全工程师之汇编指令mov、ptr、xchg交换指令,每天5分钟学习逆向吧!
  • 枚举+数学,CF 449A - Jzzhu and Chocolate