Reflex/src/main.js
2025-05-23 18:11:37 +07:00

32 lines
1.4 KiB
JavaScript

import { createApp } from 'vue';
import App from './App.vue';
import router from './router';
import { useAuth } from './auth';
import Vue3TouchEvents from 'vue3-touch-events';
import 'bootstrap/dist/css/bootstrap.min.css';
// Создаем приложение
const app = createApp(App);
// Подключаем библиотеку для обработки свайпов и жестов
app.use(Vue3TouchEvents);
// Используем роутер
app.use(router);
// Получаем экземпляр нашего auth "стора"
const { fetchUser } = useAuth();
// Асинхронная самовызывающаяся функция для инициализации
(async () => {
try {
await fetchUser(); // Пытаемся загрузить пользователя по токену из localStorage
} catch (error) {
console.error("Ошибка при начальной загрузке пользователя в main.js:", error);
// Здесь можно ничего не делать, logout уже должен был быть вызван внутри fetchUser при ошибке
} finally {
// После того как fetchUser отработал (успешно или нет), монтируем приложение
app.mount('#app');
console.log('Приложение Vue смонтировано.');
}
})();