c# - 检测导航事件 blazor webassembly

标签 c# blazor blazor-webassembly

<分区>

如何检测 URL 何时更改?我需要事件(URL 更改事件)来根据 URL 执行一些特定的操作。

最佳答案

您可以使用具有内置 LocationChanged 事件的 NavigationManager

要处理事件,您可以像这样注入(inject) NavigationManager:

@inject NavigationManager nav

要显示警报,您可能还需要添加 JSRuntime:

@inject IJSRuntime js

并通过覆盖 OnInitialize()

订阅事件
protected override void OnInitialized()
{
    nav.LocationChanged += (o, e) => {
        js.InvokeVoidAsync("alert", "Alert"); // when location is changed invoke alert js function
    };
} 

您可以在此链接中查看此示例的 repl:https://blazorrepl.com/repl/wabkuybC54SQD88I53

关于c# - 检测导航事件 blazor webassembly,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64197237/

相关文章:

c# - 拆分字符串和数字并存储在键值对上

c# - 通用 Blazor 组件的编译器错误

c# - 如何从本地网络上的另一台设备运行 Blazor 应用程序?

blazor - Wasm DOM 访问和引用类型

c# - 如何从 Blazor WebAssembly 中的 Razor 页面访问 body 标签或其他标签?

c# - C# 中的 CTCP 原始协议(protocol) ACTION 命令

c# - 为什么要转换为接口(interface)?

c# - 如何在 "normal"c# 类中使用/注入(inject)服务,例如 Blazor @inject ClassName classObject

javascript - 使用 Blazor Webassembly 和 ASP.NET Core 安全文件下载

c# - 重载泛型方法