首页 > 其他分享 >VUEX 使用学习三 : mutations

VUEX 使用学习三 : mutations

时间:2023-01-17 00:44:43浏览次数:40  
标签:subcounter mutations 学习 state increment mapMutations VUEX store

转载请注明出处:

  在 Vuex 中 store 数据改变的唯一方法就是提交 mutationsmutations里面装着一些改变数据方法的集合,这是Vuex 设计很重要的一点,就是把处理数据逻辑方法全部放在 mutations 里面,使得数据和视图分离。

  通过这种方式虽然操作起来稍微繁琐一些,但是可以集中监控所有数据的变化

  示例:

const store = new Vuex.Store({
  state: {
    count: 1
  },
  mutations: {
     // 事件类型 type 为 increment
    increment (state) { 
      // 变更状态
      state.count++
    }
  }
})

 

第一种使用方式:

  this.$store.commit() 是触发mutations的第一种方式,

  示例:

// 方法
mutations:{
  // 加的方法
  increment(state,addcounter){
    state.counter += addcounter
  },
  // 减的方法
  decrement(state,subcounter){
    state.counter -= subcounter
  }
},

  使用:

<template>
  <div>
    <h2>Vuex第四个页面</h2>
    <button @click="addnum(5)">+</button>
    <button @click="subnum(5)">-</button>
    <p>{{$store.state.counter}}</p>
  </div>
</template>

<script>
  export default {
    name: "Vuexfour",
    methods:{
      addnum(addcounter){
        this.$store.commit("increment",addcounter)
      },
      subnum(subcounter){
        this.$store.commit("decrement",subcounter)
      }
    }
  }
</script>

第二种方式 mapMutations

  通过以函数映射的方式

    1.从vuex中按需求导入mapMutations 函数

import {mapMutations} from 'vuex'

    通过刚才导入的mapMutations函数,将当前组件需要的全局数据,映射为当前组件的computed计算属性

    2. 将指定的mutations函数,映射为当前组件的methods函数

methods:{ ...mapMutations(['add']) }

    示例:

<script>
import { mapMutations } from 'vuex'
export default {
  computed:{
    count(){
      return this.$store.state.count
    }
  },
  methods:{
    ...mapMutations([//采用解构的方式引入
      'increment',
      'decrement'
    ])
  }
}
</script>

 

标签:subcounter,mutations,学习,state,increment,mapMutations,VUEX,store
From: https://www.cnblogs.com/zjdxr-up/p/17056787.html

相关文章

  • 16进制枚举状态机学习
    转自:https://blog.csdn.net/wodeni512517/article/details/711234691.介绍十六进制:typedefenum{ACTION_SHOWCARDS=0x01,//1ACTION_FOLLOW=0x02,//2A......
  • VUEX state 的使用学习二
    转载请注明出处:state提供唯一的数据资源,所有的共享的数据都要统一放到store中的state中进行存储;状态state用于存储所有组件的数据。管理数据//初始化vue......
  • Jmeter学习:采样器--http 请求采样器/Websocket 采样器/dubug 采样器
    一、http请求采样器功能:通过该组件,我们可以进行Http采样 Basic常用参数已经在截图上。GET请求可将参数填写在Parameters中。参数:FollowRedirescts和Rediect......
  • VUEX 的使用学习一
    转载请注明出处:一、Vuex是什么?介绍:Vuex是一个专为[Vue](https://so.csdn.net/so/search?q=Vue&spm=1001.2101.3001.7020).js应用程序开发的状态管理模式。它采用......
  • Matplotlib学习笔记2 - 循序渐进
    Matplotlib学习笔记2-循序渐进调整“线条”在Matplotlib中,使用plot函数绘制的线条其实是一种特定的类,matplotlib.lines.Line2D。线条有许多参量可调整,例如宽度、样式、......
  • 算法学习笔记(11): 原根
    原根此文相对困难,请读者酌情食用在定义原根之前,我们先定义其他的一点东西阶通俗一点来说,对于\(a\)在模\(p\)意义下的阶就是\(a^x\equiv1\pmodp\)的最小正......
  • 53rd 2023/1/16 平衡树学习总结
    好久没打总结了,差不多有\(\frac16\)年,是一大失误,以后会继续坚持数据结构介绍首先,架构是一颗二叉搜索树即中序遍历为递增or递减序左子树小于根节点小于右子树请自......
  • 学习模式-组合模式
    组合模式组合模式(CompositePattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的......
  • .NET 云原生架构师训练营(基于 OP Storming 和 Actor 的大型分布式架构三)--学习笔记
    目录为什么我们用OrleansDaprVSOrleansActor模型Orleans的核心概念结合OPStorming的实践结合OPStorming的实践业务模型设计模型代码实现代码实现......
  • 学习笔记:价值投资.02.投资是什么
    投资是什么投资是什么?做对的事情,把事情做对.基本版:投资是什么投资就是买未来现金流.所谓能看懂公司就是能看懂其未来现金流.(做对的事情)......