Есть ли событие при подключении компонента, в котором асинхронные данные гарантированно будут присутствовать?

Во фреймворке Vue.js нет нативного события, которое гарантированно будет вызываться при подключении компонента с асинхронными данными. Однако, есть несколько подходов, которые можно использовать для решения данной проблемы.

Первый подход - использование хука создания компонента created(). Этот хук вызывается после создания экземпляра компонента, но до монтирования компонента на страницу. Внутри хука можно выполнять асинхронные запросы или другие операции и затем обновлять данные компонента, когда они становятся доступными. Однако, нет гарантии, что асинхронные данные будут доступными в самом начале исполнения хука created().

Второй подход - использование модификатора .sync или использование собственной системы событий. Модификатор .sync позволяет связывать данные родительского и дочернего компонентов так, чтобы изменения в дочернем компоненте автоматически синхронизировались с родительским компонентом и наоборот. Внутри дочернего компонента можно использовать хук updated() для выполнения операций с асинхронными данными и обновления родительского компонента. Этот подход обеспечивает более предсказуемое поведение, поскольку гарантирует, что данные будут доступны в момент обновления компонента.

Третий подход - использование загрузчиков данных из библиотеки Vue.js, таких как vue-resource или axios. Эти библиотеки предоставляют возможность выполнять асинхронные запросы к серверу и возвращать Promise объект, который будет разрешен с данными. Вы можете использовать хуки created() или mounted() для выполнения запросов и обновления данных компонента после получения данных. Этот подход упрощает работу с асинхронными данными, поскольку библиотеки также обрабатывают ошибки и обновляют компонент при успешном выполнении запросов.

В целом, хоть и нет нативного события, которое гарантированно вызывается при подключении компонента с асинхронными данными, вы можете использовать указанные выше подходы для обработки этой ситуации. Какой именно подход выбрать, зависит от архитектуры вашего приложения и ваших предпочтений.