gpt4 book ai didi

Blazor 'Global' 参数 - 在 MainLayout.razor 、 NavMenu.razor 、 Counter.razor 之间传递 - 来回传递

转载 作者:行者123 更新时间:2023-12-04 00:20:07 27 4
gpt4 key购买 nike

给定一个“默认”Blazor 应用程序 - 使用 Visual Studio 2019 Blazor 服务器模板创建。如何创建可从所有 Razor 页面和组件访问的 GLOBAL 对象。

如何使“当前计数”值在 MainLayout、NavMenu、索引页面上可见并“动态”更新?

当前计数:@currentCount

  • 使用[参数]
  • 使用[CascadingParameter]
  • 创建一个静态类?
  • 在 Blazor 中推荐的方法是什么?

最佳答案

实现此目的的一种方法是使用注入(inject)到允许事件订阅的组件中的单例服务。事实上,我几天前和其他人讨论过这个问题。

Check out this post有关从单例触发的事件动态更新页面的讨论,跨连接更新。

Here is a working demo我改编 self 正在从事的另一个项目,当您运行该项目时,它会指示您打开另一个浏览器,复制/粘贴 URL,并有一个更新的运行计数器和一个用于在页面之间传递消息的文本框。在框中输入内容,单击按钮,所有已连接客户端的所有页面上的计数器都会更新,消息也会传递到所有页面并显示。跨浏览器和跨连接工作。

类似的概念可用于构建诸如长时间运行任务的后台通知、用户登录通知等内容。非常灵活,可以满足我的需求。

关于Blazor 'Global' 参数 - 在 MainLayout.razor 、 NavMenu.razor 、 Counter.razor 之间传递 - 来回传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61354233/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com