zoukankan      html  css  js  c++  java
  • vuex-getter

    store 的计算属性。

    getter 的返回值会根据它的依赖被缓存起来,且只有当它的依赖值发生了改变才会被重新计算

    const store = new Vuex.Store({
      state: {
        todos: [
          { id: 1, text: '...', done: true },
          { id: 2, text: '...', done: false }
        ]
      },
      getters: {
        doneTodos: state => {
          return state.todos.filter(todo => todo.done)
        }
      }
    })

    //Getter 也可以接受其他 getter 作为第二个参数:
    doneTodosCount: (state, getters) => { return getters.doneTodos.length }
    //让 getter 返回一个函数,来实现给 getter 传参
    getTodoById: (state) => (id) => { return state.todos.find(todo => todo.id === id) }

    在组件中接受getter

    computed: {
      doneTodosCount () {
        return this.$store.getters.doneTodosCount
      }
    }
    //让 getter 返回一个函数,来实现给 getter 传参
    store.getters.getTodoById(2)

    mapGetters 辅助函数

    mapGetters 辅助函数仅仅是将 store 中的 getter 映射到局部计算属性

    import { mapGetters } from 'vuex'
    
    export default {
      // ...
      computed: {
      // 使用对象展开运算符将 getter 混入 computed 对象中
        ...mapGetters([
          'doneTodosCount',
          'anotherGetter',
          // ...
        ])
      }
    }

     //将一个 getter 属性另取一个名字,使用对象形式:

    mapGetters({
      // 映射 `this.doneCount` 为 `store.getters.doneTodosCount`
      doneCount: 'doneTodosCount'
    })
  • 相关阅读:
    [css]display: table-cell,用div做分列布局
    [css]《CSS知多少》
    关于安装Android Studio的一些问题的解决方法
    枚举
    揭开计算机的神秘面纱
    Android模拟器访问本地Web应用
    Android开发中常用的Eclipse快捷键
    详解Windows平台搭建Androiod开发环境
    Web 应用的安全性
    坚持才能成功------王健林
  • 原文地址:https://www.cnblogs.com/avidya/p/8432040.html
Copyright © 2011-2022 走看看