Blazor 中有哪些库/技术可用于 WebAssembly (wasm) 的状态管理。
很高兴了解不同方法的优缺点。
我在 Blazor 应用程序的一个 razor 组件中使用 Fluxor 进行状态管理,但我不太确定如何设置它以使用 Moq 进行测试。我不能只为学生赋值,因为它只是一个 init 属性。有没有特定的方法来设置 Fluxor 进行测试?
代码
var teacherService = new Mock<ITeacherService>();
var localStorage = new Mock<ILocalStorageService>();
var studentService = new Mock<IStudentService>();
var toastService = new Mock<IToastService>();
var NavigationManager = new Mock<NavigationManager>();
var Dispatcher = new Mock<IDispatcher>();
var actionSubscriber = new Mock<IActionSubscriber>();
var StudentsState = new Mock<IState<StudentsState>>();
var TeacherState = new Mock<IState<TeacherState>>();
// Help here
StudentsState.Setup(t => t.Value.Students = )
Run Code Online (Sandbox Code Playgroud) 我是与状态管理人员合作的新手。目前,我正在开发 blazor 应用程序,我偶然发现了“fluxor”框架,它允许通过 Flux 模式进行状态管理。Fluxor 对我来说工作得很好,但是我似乎无法弄清楚页面状态的实际存储位置。它是在缓存、数据库还是其他一些奇特的方式中?有没有办法让我看到浏览器中存储的数据?
顺便说一下,我在应用程序的客户端使用 Fluxor。
谢谢你的协助!
我目前正在尝试为我的 Blazor WASM 应用程序实现 Fluxor,我发现的所有说明/教程都推荐了类似商店示例的内容:
public record AppStore {
int ClickCounter,
bool IsLoading,
WeatherForecast[]? Forecasts
}
Run Code Online (Sandbox Code Playgroud)
然后只讨论初始状态,更新只发生在数组上,bool而int数组只被彻底替换。即,示例始终从服务器获取完整数据,例如 100 个条目。
现在,这是我的问题:当我已经有 100 个条目并且只想添加/更新/删除一个条目时,如何正确处理减速器中的数组?首先,这是一个好主意吗?