zoukankan      html  css  js  c++  java
  • 在vue组件中使用vuex的state状态对象的5种方式

     

    下面是store文件夹下的state.js和index.js内容

    //state.js
    const state = {
      headerBgOpacity:0,
      loginStatus:0,
      count:66
    }
    
    export default state
    
    //index.js
    import Vue from 'vue'
    import Vuex from 'vuex'
    import state from './state'
    import actions from './actions'
    import getters from './getters'
    import mutations from './mutations'
    
    Vue.use(Vuex)
    
    export default new Vuex.Store({
      state,
      actions,
      getters,
      mutations
    })
    
    

    下面开始在test.vue组件当中使用vuex的state状态对象

    方式一
    <template>
      <div class="test">
        {{$store.state.count}}  <!--第一种方式-->
      </div>
    </template>
    
    <script type="text/ecmascript-6">
      export default{
        name:'test',
        data(){
          return{ }
        }
      }
    </script>
    
    <style>
    </style>
    
    
    方式二
    <template>
      <div class="test">
        {{count}}  <!--步骤二-->
      </div>
    </template>
    
    <script type="text/ecmascript-6">
      export default{
        name:'test',
        data(){
          return{}
        },
        computed:{
          count(){
            return this.$store.state.count; //步骤一
          }
        }
      }
    </script>
    
    <style>
    
    </style>
    
    
    方式三
    <template>
      <div class="test">
        {{count}}  <!--步骤三-->
      </div>
    </template>
    
    <script type="text/ecmascript-6">
      import {mapState} from 'vuex' //步骤一
      export default{
        name:'test',
        data(){
          return{}
        },
        computed:mapState({         //步骤二,对象方式
          count:state => state.count
        })
      }
    </script>
    
    <style>
    
    </style>
    
    
    方式四
    <template>
      <div class="test">
        {{count}}  <!--步骤三-->
      </div>
    </template>
    
    <script type="text/ecmascript-6">
      import {mapState} from 'vuex' //步骤一
      export default{
        name:'test',
        data(){
          return{}
        },
        computed:mapState([        //步骤二,数组方式
          "count"
        ])
      }
    </script>
    
    <style>
    
    </style>
    
    
    方式五
    <template>
      <div class="test">
        {{count}}  <!--步骤三-->
      </div>
    </template>
    
    <script type="text/ecmascript-6">
      import {mapState} from 'vuex' //步骤一
      export default{
        name:'test',
        data(){
          return{}
        },
        computed:{
          ...mapState([             //步骤二,对象扩展运算符方式
            "count"
          ])
        }
      }
    </script>
    
    <style>
    
    </style>
    
    

    以上是使用vuex的state状态对象的5种方式,在此记录学习!

  • 相关阅读:
    nvidia显卡驱动问题 MKY
    记一次阿里云硬盘LVM的扩容
    大佬的ELK优化总结
    Spring boot使用Javax.validation和ControllerAdvice来进行参数校验
    esbuild 学习(1)
    git push、git pull 需要输入用户名和密码
    redis 发布订阅
    .NET Core使用RabbitMQ
    Nginx配置Https(详细、完整)
    dotnetcore 在线源码
  • 原文地址:https://www.cnblogs.com/huancheng/p/10265606.html
Copyright © 2011-2022 走看看