vue.js - Utilizarea mapGetters în TypeScript și Vue
Nu pot găsi un răspuns clar la asta și nu sunt foarte bun la TS. Cum pot să convertesc această proprietate calculată în Vue pentru a fi utilizată într-un fișier TypeScript?
computed: {
...mapGetters({
getLoggedInUserFirstName: "Common/getLoggedInUserFirstName",
getLoggedInUserLastName: "Common/getLoggedInUserLastName"
})
}
Răspuns #1
Conform comentariilor lui @LOTUSMS, el a spus că folosește într-un fișier Vue.
Ei bine, ai două opțiuni aici. Dacă folosești sintaxa bazată pe clase, adică:
@Component({})
export default class MyComponent extends Vue {
...
}
poți face următoarele:
@Component({
computed: {
...mapGetters({
getLoggedInUserFirstName: "Common/getLoggedInUserFirstName",
getLoggedInUserLastName: "Common/getLoggedInUserLastName"
})
}
})
export default class MyComponent extends Vue {
// if you can you can denote the type with:
// public getLoggedInUserFirstName!: string;
public getLoggedInUserFirstName!;
public getLoggedInUserLastName!;
}
Dacă folosiți versiunea extinsă, o puteți folosi pur și simplu așa cum o foloseați înainte:
<script lang="ts">
import Vue from 'vue';
export default Vue.extend({
computed: {
...mapGetters({
getLoggedInUserFirstName: "Common/getLoggedInUserFirstName",
getLoggedInUserLastName: "Common/getLoggedInUserLastName"
})
}
})
</script>
