gpt4 book ai didi

typescript - 使用 Vuex mapGetters 时如何修复 TypeScript 错误?

转载 作者:搜寻专家 更新时间:2023-10-30 20:34:53 26 4
gpt4 key购买 nike

当使用 mapGetters 时,TypeScript 无法看到绑定(bind)到 Vue 组件的 getter 是什么,因此它会抛出错误。示例:

import Vue from 'vue';
import { mapActions, mapGetters } from 'vuex';

export default Vue.extend({
computed: {
...mapGetters('ui', ['navCollapsed']),

minimizerIconClass(): string {
return `fa${this.navCollapsed ? '' : 'r'} fa-window-maximize`;
},
},

TypeScript 正在大喊 this.navCollapsed:

TS2339: Property 'navCollapsed' does not exist on type 'CombinedVueInstance<Vue, {}, { openMobileMenu(): void; }, { minimizerIconClass: string; }, Readon...'.

我该如何解决这个问题?我能想到的唯一解决方法是不使用 mapGetters()

最佳答案

我建议使用 vuex-class用于带有 Typescript 的装饰器。

但如果您不想要额外的依赖项,我相信使用 this['navCollapsed'] 而不是 this.navCollapsed 应该可以解决编译错误。

关于typescript - 使用 Vuex mapGetters 时如何修复 TypeScript 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48483591/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com