Вы должны будете выполнить проверку сразу после загрузки страницы. Теперь, каким бы ни был ваш алгоритм входа в систему, у вас определенно должен быть способ получить доступ к этому состоянию на внешнем интерфейсе.
function getLoginStatus(){
//do something, get login status from server whatsoever
return status; //boolean
}
function redirect(){
const url = window.location.search.split("?link=")[1];
const externalurl = 'https://foo.com';
//get url, parse, etc etc
//check login status
if(getLoginStatus()){
window.location.href = externalurl;
}
else {
window.location.href = 'login.html';
}
}
window.onload = function(){
redirect();
}
Теперь все, что вам нужно сделать, это организовать это так, чтобы оно соответствовало вашему VUE-коду или любой структуре кода, которую вы используете. Вы можете использовать маршрут или что-то. Я сам даже не использовал бы Vue для обработки этого, поскольку это не имеет ничего общего с пользовательским интерфейсом.