Как определить интерфейс машинописи VueJS3 для Vuex

#typescript #vue.js #vuejs3

Вопрос:

У меня есть проект VueJS 3 с машинописным текстом и Vuex 4. Я создал магазин, как описано в Vuex.

Как мне определить свой интерфейс в state.ts, чтобы массив<Спортсмены><Спортсмены> был правильно реализован в объекте «состояние»???

 // store.ts 
import {InjectionKey} from "vue"
import {createStore, Store, useStore as baseUseStore} from "vuex"
import {State} from "../interfaces/state";

export const key: InjectionKey<Store<State>> = Symbol()

export const store = createStore<State>({
    state: {
        athletes: [],
    },
    ...
});

export function useStore() {
    return baseUseStore(key)
}


// state.ts 
// Interface for the store
import {Athlete} from "./athlete"; // Athlete Interface

export interface State {
    athletes: Array<Athlete>
}
 

Комментарии:

1. Все выглядит нормально. У вас есть проблемы с этим или вы просто спрашиваете, правильно ли это?