0

我有一个具有以下渲染(计算道具)的组件。它可以工作并显示 blopp 应该显示的文本,但 blpp没有任何内容。在最终版本中,我希望它生成一个从商店状态中获取的字符串列表,并用作blpp

export default {
  computed:{
    blopp: function(){ return "ghjk,l"; },
    blipp: function(){ return this.$store.getters.getBlipp(); }
  }
}

它基于以下模板呈现。

<template>
  <div>
    ...
    <div v-bind:blopp="blopp">{{blopp}}</div>
    <div v-bind:blipp="blipp">{{blipp}}</div>
  </div>
</template>

store实现看起来像这样,将getter带到了开放论坛。

...
const state = { blipp: [], ... };
const getters = {
  getBlipp: function() { return state.Blipp; }, ...
}
export default new Vuex.Store({ state, mutations, actions, getters });

第二个组件根本没有任何价值,我不确定在哪里寻找原因。

我可能设置不正确,但它有很多活动部件,对于无知的我来说有点难以诊断。当我尝试在控制台中运行以下命令时,

temp.$store.getters

我得到一个对象,它列出了这样的吸气剂。

...
blipp:(...)
get blipp: function()
__proto__: Onject

不确定如何处理该信息......它似乎是一个函数,但是当我尝试调用它时,它说它是未定义的。

4

1 回答 1

2

getter的功能与states类似。因此,要解决它们,您调用参数而不是方法,即

blipp: function() { return this.$store.getters.getBlipp }

在这种情况下,您可能想重命名getBlippblipp

我整理了一个 JSFiddle,它展示了您可以与 vuex 的商店进行交互的各种方式,希望对您有所帮助:

示例 Vuex JSFiddle

于 2016-12-02T13:21:31.657 回答