• vue vuex


    Vuex是做什么的?
    Vuex是专门为Vue.js应用程序开发的状态管理模式
    它采用 集中式存储管理 应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生改变
    
    状态管理是什么?
        你可以简单的将其看成把需要多个组件共享的变量全部存储在一个对象里面
        然后把这个对象放在顶层的Vue实例中,让其他组件可以使用
    
    Vuex提供了这样一个在多个组件间共享状态的插件,用它就可以了

    使用vuex状态并且修改状态值:

    <template>
      <div class="home">
        <!-- vuex共享状态 -->
        <h1>   vuex:{{$store.state.counter}}</h1>
        <h1>   vuex:{{$store.getters.poswerCounter}}</h1>
        <!-- 通过 mutations 修改状态值 -->
        <!-- commit的第一个参数是getters里面的方法名,第二个参数是传过去的参数(被称为是moutation的载荷payload) -->
         <button @click="$store.commit('increment',false)">-</button>
         <button @click="$store.commit('increment',true)">+</button>
         
      </div>
    </template>

    vuex对象的定义:

    import Vue from 'vue'
    import Vuex from 'vuex'
    
    Vue.use(Vuex)
    
    export default new Vuex.Store({
      state: {
        counter: 0
      },
      mutations: {
        // 方法(修改state不能直接修改,要通过mutations 或 actions)
        increment(state,boo){
          if(boo){
            state.counter++
          }else{
            state.counter--
          }
          
        }
      },
      // 相当于vuex的计算属性
      getters:{
        poswerCounter(state){
          return state.counter*state.counter
        }
      },
      actions: {
      },
      modules: {
      },
     
    })

    vuex的wantch这样写:

     watch: {
        '$store.state.id':function(newFlag, oldFlag){
           // 需要执行的代码
           console.log(newFlag)
           this.catid = newFlag
           this.load_mall()
    
        }
      },
  • 相关阅读:
    去年课程设计的作品
    终于结束了期末考试
    记在园子里安家
    ASP.NET中实现无刷新级联
    ASP.NET中利用JQuery AJAX修改用户密码
    The LogStructured MergeTree(译)(转载)
    我常用的Latex中文报告模板(一)
    LRU算法的简单实现( C语言 + uthash包)
    epoll 使用详解
    转载系列之一:浅析Hadoop文件格式
  • 原文地址:https://www.cnblogs.com/cl94/p/12371324.html
Copyright © 2020-2023  润新知