У меня есть Vue SPA, и я использую плагин Vue SSR для доставки мета-тегов Open Graph в Facebook, Twitter и другие сканеры / боты социальных сетей (потому что те не могут запускать Javascript).
Несколько дней назад код SSR начал давать сбой, сказав, что есть необработанное обещание.
Я добавил следующий код в мою реализацию SSR (которая выполняется с Node):
process.on('unhandledRejection', (reason, p) => {
console.log('Unhandled Rejection at: Promise', p, 'reason:', reason);
});
Это дало мне следующий вывод:
Unhandled Rejection at: Promise Promise {
<rejected> [NavigationDuplicated] {
_name: 'NavigationDuplicated',
name: 'NavigationDuplicated'
}
} reason: [NavigationDuplicated] {
_name: 'NavigationDuplicated',
name: 'NavigationDuplicated'
}
Если я правильно понял вывод, что-то в коде Vue дважды вызывает route.push()
с одним и тем же URL и вызывает ошибку NavigationDuplicated
. В любом случае, я понятия не имею, какая из тысяч route.push
в коде является ответственной за это.
Есть ли какой-нибудь способ, которым я могу получить более подробную обратную трассировку или каким-либо другим способом найтиточная строка кода, которая вызывает эту ошибку?