Blazor 服务器通知组件外部的 UI

mp9*_*007 1 signalr blazor blazor-server-side

我的应用程序将组件列表上传到我们的 ERP 中。上传过程可能需要 1 或 2 分钟。我想实时通知用户发生了什么。

我创建了一个 Blazor 服务器应用程序。我有带有一些 UI 逻辑的 razor 页面,但我不想将所有处理逻辑放在 razor 页面内。所以我把它放到了一个工人身上。

工作人员如何将通知推送到 blazor 组件?

我对 SignalR 很感兴趣,但它们主要是关于 Blazor WebAssembly 的,或者对我来说太基础了,无法了解如何将其应用到我的情况中。

我想知道什么是好方法?

MrC*_*tis 5

您使用通知模式。该服务(即您所说的工作人员)每当发生更改时都会引发一个事件。任何需要了解更改的 UI 组件都会在服务事件上注册事件处理程序。通常事件处理程序只调用StateHasChanged.

这是一个 Stackflow 答案,演示了使用 Wea​​therForecast 列表的通知模式。当 API 调用完成时,如何从 .RAZOR 主页面内的所有子组件触发/刷新我的 .RAZOR 主页面?