• Vuex 第2节 state访问状态对象


    Vuex 第2节 state访问状态对象


    第2节 state访问状态对象

    在第1节我们已经写了一个 const state ,这个就是我们说的访问状态对象,它就是我们SPA(单页应用程序)中的共享值。今天我们主要学习状态对象赋值给内部对象,也就是把stroe.js中的值,赋值给我们模板里data中的值。例如:将{{$store.state.count}}这样的形式写成以前的那种形式:{{count}}
    有三种赋值方式。

    1. 通过compute的计算属性直接赋值

    computed属性可以在输出前,对data中的值进行改变,我们就利用这种特性把store.js中的state值赋值给我们模板中的data值。

    export default {
        data(){
            return{
                msg:'Hello Vuex'
            }
        },
        computed:{
            count(){
                return this.$store.state.count;  //这里一定要加this,否则找不到$store
            }
        },
        store
    }
    

    那么我们在Count.vue页面中的{{count}}就能显示出count值,和之前{{$store.state.count}}完全一模一样,且同时变化。

    2. 通过mapState的对象来赋值

    我们首先要用import引入mapState。(同样在Count.vue引入store的下面写)

    import {mapState} from 'vuex';
    

    然后还在computed计算属性里写如下代码:

    computed:mapState({
    	count:state=>state.count  //这里用ES6的箭头函数来给count传值
    }),
    

    可以达到相同的传值效果。

    3. 通过mapState的数组来赋值

    只需将上面computed的地方改一改:

    computed:mapState(['count'])   //数组里面的值是字符串
    

    这算是最简单的写法,在实际项目开发当中也经常这样使用。

  • 相关阅读:
    BZOJ5473: 仙人掌
    BZOJ5289: [Hnoi2018]排列
    BZOJ5322: [JXOI2018]排序问题
    BZOJ5323:[JXOI2018]游戏
    webstorm引用ESLint进行静态代码检查
    React基础知识
    静态资源优化方案
    Nodejs 饭店
    linux du和df
    Docker知识-1
  • 原文地址:https://www.cnblogs.com/Elva3zora/p/12714509.html
Copyright © 2020-2023  润新知