vue2+vuex的state的使用

app.vue

<template>
  <div class="app">

    <h3> 在模板中直接使用 </h3>
    姓名 : {{ $store.state.nameVuex }}
    等级 : {{ $store.state.levelVuex }}
    头像 : {{ $store.state.avtarURLVuex }}

    <h3> 计算属性(映射状态) : 数组写法 -- 只适合vue2 </h3>
    姓名 : {{ nameVuex }}
    等级 : {{ levelVuex }}
    头像 : {{ avtarURLVuex }}

    <h3> 计算属性(映射状态) : 对象写法(防止跟data的命名冲突) -- 只适合vue2</h3>
    姓名 : {{ snameVuex }}
    等级 : {{ slevelVuex }}
    头像 : {{ savtarURLVuex }}
  </div>
</template>

<script>
  // 映射函数
  import { mapState } from 'vuex';

  export default {
    computed:{
      ...mapState(['nameVuex','levelVuex','avtarURLVuex']),
      ...mapState({
        snameVuex:state =>state.nameVuex,
        slevelVuex:state =>state.levelVuex,
        savtarURLVuex:state =>state.avtarURLVuex
      })
    }
  }
</script>

 

store / index.js

import { createStore } from 'vuex'

export default createStore({
  state: {
    nameVuex:'yjx',
    levelVuex:100,
    avtarURLVuex:'http'
  },
})

 

posted @ 2022-08-29 15:51  杨建鑫  阅读(180)  评论(0编辑  收藏  举报