useStore, а затем используйте его в компоненте.import { createStore, Store, useStore as baseUseStore } from 'vuex';
export const key: InjectionKey<Store<RootState>> = Symbol();
export function useStore() {
return baseUseStore(key);
}
использовать в компоненте
setup() {
const store = useStore();
const onClick = () => {
console.info(store)
store.dispatch('user/getUserInfo');
}
return {
onClick,
}
},
store не определено.methodsmethods: {
login() {
this.$store.dispatch('user/getToken')
}
}



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


В этом уроке , упрощающем использование useStore , вам все равно нужно зарегистрировать store и key в main.ts, как они это сделали. Вы получите undefined, если не сделаете этого:
// main.ts
import { store, key } from './store'
const app = createApp({ ... })
// pass the injection key
app.use(store, key)
Причина в том, что baseUseStore(key) не имеет смысла, пока это не будет сделано.