1. 程式人生 > 實用技巧 >vue中模組化後mapState的使用

vue中模組化後mapState的使用

今天遇到一個新需求:按照當前使用者的角色,為頁面中的某欄位分配不同的名稱,大概就是這個意思。採用的是vue-element-admin框架,框架裡的store根據不同的功能界限劃分出不同的模組:user/tagView/permission等,放在modules資料夾裡。

之前有說過使用mapState語法糖,在這裡直接用computed返回竟然不行。然後在官網有看到相關說明:進入官網

程式碼如下:

相當於聲明瞭一個變數name,然後以state入參取得其modules資料夾中user檔案裡的name屬性。因為在模組(如user)中,在丟擲時的export default中添加了一句:namespaced:true,這很好的使模組域互相分離,並以檔名作為字首才可獲取其中內容。

<template>
  <div class="container">    
  </div>
</template>
<script>
import {mapState} from "vuex"
export default {
  computed:{
    ...mapState({
      'name':state=>state.user.name
    })
  },
  data(){
    return{
      
    }
  },
  mounted(){
    console.log(this
.name) } } </script>