vue.js - Vuex Getters och Typescript-fel
Jag har ett projekt som använder Vuex och Composition API. Jag har aktiverat TypeScript och jag har en komponent som behöver hämta ett booleskt värde från en getter i min store-modul på följande sätt:
const flag = computed(() => store.getters['test/flag'])
koden fungerar bra medan jag utvecklar, men om jag försöker bygga den får jag följande TypeScript-fel:
106:33 fel Osäker medlemsåtkomst ['test/flag'] på ett any-värde @typescript-eslint/no-unsafe-member-access 106:33 fel Osäker retur av ett any-typat värde
@typescript-eslint/no-unsafe-return
Hur konfigurerar jag butiken för att använda getters med TypeScript?
Svar #1
Som standard är Vuex-butiker inte typ-säkra. Du kommer att behöva använda ett tredjepartsbibliotek för att lösa det.
Personligen föreslår jag att använda typed-vuex som fungerar utmärkt och bara använda wrappers runt din befintliga vaniljbutik.
Då kan du använda din butik som this.$accessor.test.flag med typer.
Observera: du kan också bara inaktivera eslint-regeln, det är upp till dig :)