使用Fluxor的Blazor State:ActionSubscriber或SubscribeToAction使用什么



我是Blazor和Fluxor的新手,我试图设计使用更好的方法

IActionSubscriber-手动注入、订阅和取消订阅

继承FluxorComponent-并使用ActionSubscriber

什么是最好的解决方案?什么是优点和缺点?

FluxorComponent继承有几个优点,因为您不需要一直手动调用StateHasChanged,也不必注入IActionSubscriber,因为它是免费提供的,而且您不必记得在处理组件时取消订阅。

就功能而言,我认为没有任何区别,只是FluxorComponent为您处理了一些工作。

我能想到的唯一缺点是,如果从FluxorComponent继承会使您无法从另一个基本组件类继承。

就我自己而言,我只是继承了FluxorComponent并离开了。它运行得很好。

从FluxorComponent派生将意味着您的组件自动订阅任何IState<T>属性上的StateChanged-当触发时,它将调用InvokeAsync(StateHasChanged以确保UI更新。

IActionSubscriber并不是用来确定何时更新UI,而是允许UI捕获没有减少到存储中的数据。例如,要编辑的当前页面的服务器API中的可编辑DTO。

相关内容

  • 没有找到相关文章