Я работаю со сторонним веб-сайтом, который использует Angular.
Мне нужно выполнить некоторые действия, когда пользователь заходит на страницу клиента, то есть всякий раз, когда пользователь переходит со страницы входа в систему, чтобы он вошел в систему.площадь.(Оба находятся на одном веб-сайте и используют Angular).
Раньше это работало раньше, поскольку действия выполняются при перезагрузке страницы, но, поскольку мы находимся в SPA, перезагрузка страницы не происходит при изменении страницы.
Мой код живет на странице, но не находится "внутри" приложения Angular, и я никогда раньше не использовал Angular, поэтому я вижу только те элементы веб-страницы, которые являются глобальными.
Один из способов решения этой проблемы - отслеживать URL-адрес текущей страницы и определять, когда он изменяется с: https://somedomain/#/loginpage
на https://somedomain/#/loggedArea
, используя объект window.location
:
var previousHash; //This will store the hash of the page we were in before
// Then we would have to constantly check if the URL has changed
if(previousHash == "#/login" && window.location.hash == "#/loggedArea"){
callOnLoadActions()
}
но это кажется мне немного хрупким и хакерским.
Есть ли "официальный" или, по крайней мере, лучший способ слушать, когда страницаобновляется?