问题描述
尝试访问 Quasar V2 beta 应用程序的 Veux 4 商店中的 getter 函数时编译错误。
对任何值的不安全成员访问 ['item/getRandomNumber']。eslint@typescript-eslint/no-unsafe-member-access
setup() {
return { randomNumber: computed(() => store.getters['item/getRandomNumber']) }
},
模块项下的getter.ts
import { GetterTree } from 'vuex';
import { StateInterface } from '../index';
import { ItemStateInterface } from './state';
const getters: GetterTree<ItemStateInterface,StateInterface> = {
getRandomNumber ( /* context */) {
return 20;
}
};
export default getters;
模块项下的index.ts
import { Module } from 'vuex';
import { StateInterface } from '../index';
import state,{ ItemStateInterface } from './state';
import actions from './actions';
import getters from './getters';
import mutations from './mutations';
const itemmodule: Module<ItemStateInterface,StateInterface> = {
namespaced: true,actions,getters,mutations,state
};
export default itemmodule;
store/index.ts
import { store } from 'quasar/wrappers'
import { InjectionKey } from 'vue'
import {
createStore,Store as VuexStore,useStore as vuexUseStore,} from 'vuex'
import item from './module-item'
import { ItemStateInterface } from './module-item/state';
export interface StateInterface {
item : ItemStateInterface
}
declare module '@vue/runtime-core' {
interface ComponentCustomProperties {
$store: VuexStore<StateInterface>
}
}
export const storeKey: InjectionKey<VuexStore<StateInterface>> = Symbol('vuex-key')
export default store(function (/* { ssrContext } */) {
const Store = createStore<StateInterface>({
modules: {
item
},// enable strict mode (adds overhead!)
// for dev mode and --debug builds only
strict: !!process.env.DEBUGGING
})
return Store;
})
export function useStore() {
return vuexUseStore(storeKey)
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)