zoukankan      html  css  js  c++  java
  • Vuex 最简单的数量增减实例

    Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。

    简单配置

    在src目录下新建

    |- src
        |- vuex
            |-store.js
    
    import Vue from 'vue';
    import Vuex from 'vuex';
    
    Vue.use(Vuex);
    
    const store = new Vuex.Store({
      state: {
      },
      mutations: {
    
      }
    
    })
    
    export default store;
    

    在main.js

    import store from './vuex/store'
    
    /* eslint-disable no-new */
    new Vue({
      router,
      store,
      render: h => h(App)
    }).$mount('#app-box')
    
    

    用vuex 最简单的操作

    在vuex里面定义一个数量count变量,以及increment()增加和decrease()减少的方法

    import Vue from 'vue';
    import Vuex from 'vuex';
    
    Vue.use(Vuex);
    
    const store = new Vuex.Store({
    
      state: {
        
        // 计算数量
        count: 0
      },
      
      mutations: {
        
        // 增加
        increment (state) {
          state.count ++
          console.log(state.count);
    
        },
        
        // 减少
        decrease (state) {
          state.count --
          console.log(state.count);
          
        },
      }
    })
    
    export default store;
    

    页面:

    <template>
      <div class="main" >
    
        <!-- 数量 -->
        <!-- store.state 来获取状态对象 ,以及通过 store.commit 方法触发状态变更 -->
        <div class="num">{{this.$store.state.count}}</div>
    
        <!-- 操作 -->
        <x-button type="primary" mini @click.native="increment">增加数量</x-button>
        <x-button type="primary" mini @click.native="decrease">减少数量</x-button>
      </div>
    </template>
    

    操作方法

        /**
          操作vuex里面的加法
          store.commit 方法触发状态变更
          我们通过提交 mutation 的方式,而非直接改变 store.state.count
          是因为我们想要更明确地追踪到状态的变化
        */
    
        increment(){
          this.$store.commit('increment')
        },
    
        // 操作vuex里面的减法
        decrease(){
          this.$store.commit('decrease')
        },
    

    推荐几个好的vue ui库
    vux库地址
    iviewui库地址
    饿了么库地址

    其中我引入了vux框架, 这是个vue - 移动端Vue非常棒的组件库,如果大家复制代码过去,如果没有引入vux库,记得直接把< x-button>< x-button>改为< button>< /button>

  • 相关阅读:
    剑指Offer:数组中的逆序对
    Java高并发教程:Java NIO简介
    Java高并发教程:高并发IO的底层原理
    算法相关——Java排序算法之希尔排序(五)
    Materialized View模式
    Java技术——Java中的static关键字解析
    算法相关——Java排序算法之插入排序(四)
    Android Studio 2.2新增布局——ConstraintLayout完全解析
    公平锁与非公平锁
    Java线程和多线程(十五)——线程的活性
  • 原文地址:https://www.cnblogs.com/liangfengbo/p/7521528.html
Copyright © 2011-2022 走看看