Files
F4iljiandQwen-Coder d7c6d23a6b fix(ssr): добавить route mixin для SSR совместимости Ziggy
- Создан RouteMixin.js для предоставления route() всем компонентам
- Обновлён ssr.js с правильным импортом Router и созданием route функции
- Исправлен BackButton.vue с проверкой this.route перед использованием
- Добавлена обработка ошибок для route() с fallback на '#'

Решает ошибку: ReferenceError: route is not defined at Proxy.resolvedLink

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-04-07 22:41:14 +05:00

28 lines
931 B
JavaScript

/**
* SSR-safe route mixin
* Provides the route() function to all Vue components during SSR
*/
export function createRouteMixin(pageProps, RouterClass) {
return {
methods: {
route(name, params = {}, absolute = false) {
try {
const ziggyConfig = {
...pageProps.ziggy,
location: pageProps.ziggy?.location
? new URL(pageProps.ziggy.location)
: new URL(process.env.APP_URL || 'http://localhost'),
};
const router = new RouterClass(name, params, absolute, ziggyConfig);
return router.toString();
} catch (error) {
console.error('Ziggy route error:', error.message);
return '#';
}
}
}
};
}