【发布时间】:2019-04-25 05:23:51
【问题描述】:
我正在尝试将 b-dropdown 元素中的文本绑定到商店中的值。我尝试绑定到计算属性,因为存储中的值可以更改,并且 b-dropdown 的文本应该动态更改以反映此更改。我想将值存储在存储中而不是作为数据对象,因为该值必须保留在 b-dropdown 存在的组件之外。
这是 b-dropdown 元素:
<b-dropdown v-bind:text="selectedSearchType" variant="outline-secondary">
...
</b-dropdown>
还有计算属性
computed: {
selectedSearchType: function() {
return store.getters.getSelectedSearchType
}
},
吸气剂
getSelectedSearchType: state => {
return state.selectedSearchType
}
国家
state: {
selectedSearchType: "Item",
.....
}
我收到以下错误:
[Vue warn]: Invalid prop: type check failed for prop "text". Expected String, got Function.
如果我这样做了
<b-dropdown v-bind:text="selectedSearchType()" variant="outline-secondary">
我明白了
[Vue warn]: Error in render: "TypeError: Cannot read property 'selectedSearchType' of undefined"
如何解决此问题以使 b-dropdown 的文本绑定到商店中的 selectedSearchType?
【问题讨论】:
-
您愿意与我们分享 getSelectedSearchType getter 吗?
-
@DawidZbiński,我已经编辑了我的问题以包括吸气剂和状态
-
如何在组件中导入
store? -
我正在使用
import store from '../store/module'导入商店。 store 包含在 module.js 文件中。
标签: javascript html vue.js vuejs2 vuex