Właśnie zastanawiam się jak to zrobić. Do pokazania komponentu używam:
<div v-if="showMe">
<h1>Hello</h1>
</div>
Chciałbym aby po zmianie wartości z showMe = false na showMe = true, komponent pojawił się z opóźnieniem. np. 1000ms, a w tym czasie pojawi się komponent ""loading bar". Pomyślałem o tym, żeby ustawić po prostu jakiś timeout ale jeszcze w dokumentacji przeczytałem o asynchronicznych komponentach: https://vuejs.org/guide/components/async.html
Bardziej chciałbym to zrobić dla jakiś fajnych efektów.
Jeszcze na myśl mi przyszedł ten fragment kodu z React, który kiedyś napisałem:
const getAllContacts = async () => {
setFetchingContactListData(true);
const allContacts = await retrieveContacts();
if (allContacts) {
//Delay to make the effect of the loaded icon
setTimeout(() => {
setFetchingContactListData(false);
setContacts(allContacts);
}, 700);
}
};
getAllContacts();
}, []);