Где лучше всего в компоненте обращаться за данными на
В onMounted.
Потому что:
1. Нельзя просто так использовать
2. Если в запросе будет непойманная ошибка, то в
3. С точки зрения системного дизайна,
4. Были неоднократные свидетельства, что сетевой запрос в
Источник: vue-faq
#tip #api #hooks #scriptsetup #mounted
backend API
- в теле script setup
, или в хуке жизненного цикла onMounted
?В onMounted.
Потому что:
1. Нельзя просто так использовать
await
в корне сетапа, это требует наличия Suspense
и делает компонент асинхронным и ненужно усложняет приложение. Поэтому приходится использовать промисный then
или IIFE
, что может нарушить общий code style, хуже читается и менее удобно.2. Если в запросе будет непойманная ошибка, то в
script setup
её не обработать, в отличие от хука.3. С точки зрения системного дизайна,
script setup
- это конструктор компонента. Запрашивать в нем данные из внешних источников нелогично.4. Были неоднократные свидетельства, что сетевой запрос в
script setup
не работал правильно, а при переносе в onMounted
- работал. Зависит от контекста, но тем не менее.Источник: vue-faq
#tip #api #hooks #scriptsetup #mounted
Vue FAQ
API сервис | Vue FAQ
Vue FAQ - information about Vue.js and frontend development in general