Wewnątrz Vuex w pliku actions.js mam akcję, która pobiera dane z backendu, a następnie je ustawia:
async loadData(context) {
const response = await fetch(
`http://localhost:9090/api/v1`, {
headers: {
'Content-Type': 'application/json'
}
}
);
const responseData = await response.json();
const data = {
email: responseData.email
};
context.commit('setEmail', data);
},
Teraz jak wewnątrz jakiegoś komponentu zrobię sobie takie coś:
const email = ref(store.getters.email)
żeby potem wyświetlić to w polu tekstowym:
<input v-model="email"/>
to to pole tekstowe zawsze jest puste. To dlatego, że request trwa powiedzmy około 1 sekundę i zanim się skończy to komponent już dawno się wyrenderuje gdy store.getters.email
jeszcze jest null. Przyczynę znam ale jak to obejść już nie mam pojęcia. Proszę o pomoc.