У меня есть страница, которая принимает два параметра URL:
@page "document/{partition}/{id}"
Если я наберу URL, скажем, https://somehost:1234/document/abcd/xyz123
, страница загружается нормально.
Я зарегистрировал * Событие 1007 *, которое выполняет некоторые вещи:
private async void OnLocationChanged(object sender, LocationChangedEventArgs e)
{
await DoStuff();
}
Проблема, с которой я столкнулся, заключается в том, что если у меня есть ссылка тега привязки с href="/document/klmn/defg9876"
и щелкните ссылку, мое событие будет запущено, но браузер не будет перемещаться и загружаться новый документ. Если я добавлю NavigateTo(e.Location)
к своему обработчику событий, я получу бесконечное l oop.
Как мне заставить Blazor перейти к URL после обработки моего события?
РЕДАКТИРОВАТЬ
Если я добавлю ссылку обратно на домашнюю страницу, тогда я смогу go со страницы document
на страницу home
. Между двумя document
ссылками URL-адрес в браузере изменяется, но OnInitialized
не запускается для нового URL-адреса. Я, очевидно, бросил вызов жизненному циклу страницы.