vue-vuex-getters的基本使用


  store對象中getters就類似於計算屬性,若想獲取state的變量,直接獲取即可,但很多時候獲取的state變量需要經過一系列的加工或計算才是我們想要的,因此才有了getters,下面演示個最基本的getters使用:

<template>
  <div>
    <h2>{{$store.getters.increhun}}</h2>
    <button @click="addition">counter+1</button>
  </div>
</template>

  getters: {
    increhun(state){
      return state.counter+100
    }
  }

  若是想在getters中的一個方法調用另一個方法,可用參數2,如下:

  getters: {
    increhun(state){
      return state.counter+100
    },
    incretwohun(state,getters){
      return getters.increhun + 100
    }
  }

  現在有一個新的需求是:調用getters的方法並傳入我們的參數,可以用如下的做法:

<template>
  <div>
    <h2>{{$store.getters.getstusbyage(20)}}</h2>
  </div>
</template>
  getters: {
    getstusbyage(state){
      //寫法一
      // return function(age){
      //   return state.stus.filter(s => s.age>=age)
      // }
      //寫法二
      return age => state.stus.filter(s => s.age>=age)
    }
  }

  這種方法算是投機取巧了,因為$store.getters.getstusbyage得到一個函數,只不過后面(20)相當於給這個函數參入參數並調用


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM