@ -8,6 +8,8 @@
|
|||||||
@using Microsoft.AspNetCore.Components.Routing
|
@using Microsoft.AspNetCore.Components.Routing
|
||||||
@inject SiteState SiteState
|
@inject SiteState SiteState
|
||||||
@inject IUriHelper UriHelper
|
@inject IUriHelper UriHelper
|
||||||
|
@inject INavigationInterception NavigationInterception
|
||||||
|
@inject IComponentContext ComponentContext
|
||||||
@inject IJSRuntime jsRuntime
|
@inject IJSRuntime jsRuntime
|
||||||
@inject IAliasService AliasService
|
@inject IAliasService AliasService
|
||||||
@inject ITenantService TenantService
|
@inject ITenantService TenantService
|
||||||
@ -17,6 +19,7 @@
|
|||||||
@inject IModuleService ModuleService
|
@inject IModuleService ModuleService
|
||||||
@inject IModuleDefinitionService ModuleDefinitionService
|
@inject IModuleDefinitionService ModuleDefinitionService
|
||||||
@inject IThemeService ThemeService
|
@inject IThemeService ThemeService
|
||||||
|
@implements IHandleAfterRender
|
||||||
|
|
||||||
@DynamicComponent
|
@DynamicComponent
|
||||||
|
|
||||||
@ -26,9 +29,11 @@
|
|||||||
|
|
||||||
[Parameter] Action<PageState> OnStateChange { get; set; }
|
[Parameter] Action<PageState> OnStateChange { get; set; }
|
||||||
|
|
||||||
RenderFragment DynamicComponent { get; set; }
|
|
||||||
private string _absoluteUri;
|
|
||||||
PageState pagestate;
|
PageState pagestate;
|
||||||
|
RenderFragment DynamicComponent { get; set; }
|
||||||
|
|
||||||
|
string _absoluteUri;
|
||||||
|
bool _navigationInterceptionEnabled;
|
||||||
|
|
||||||
protected override void OnInit()
|
protected override void OnInit()
|
||||||
{
|
{
|
||||||
@ -240,12 +245,17 @@
|
|||||||
private async void OnLocationChanged(object sender, LocationChangedEventArgs args)
|
private async void OnLocationChanged(object sender, LocationChangedEventArgs args)
|
||||||
{
|
{
|
||||||
_absoluteUri = args.Location;
|
_absoluteUri = args.Location;
|
||||||
await LocationChanged();
|
await Refresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task LocationChanged()
|
Task IHandleAfterRender.OnAfterRenderAsync()
|
||||||
{
|
{
|
||||||
await Refresh();
|
if (!_navigationInterceptionEnabled && ComponentContext.IsConnected)
|
||||||
|
{
|
||||||
|
_navigationInterceptionEnabled = true;
|
||||||
|
return NavigationInterception.EnableNavigationInterceptionAsync();
|
||||||
|
}
|
||||||
|
return Task.CompletedTask;
|
||||||
}
|
}
|
||||||
|
|
||||||
private Dictionary<string, string> ParseQueryString(string path)
|
private Dictionary<string, string> ParseQueryString(string path)
|
||||||
|
Reference in New Issue
Block a user