我对Elmish是个新手。使用dotnet new SAFE做了一个样例模板。当我打开应用程序并使用redux dev tools Chrome扩展时,我总是收到"UserMsg“的信息。当我点击"-“或"+”按钮时,有没有办法让它变成“增量”或“递减”?
发布于 2019-07-26 06:52:42
elmish浏览器导航模块将所有消息包装在解析器类型中,解析器类型是Change (对于URL更改)或UserMsg (对于其他所有内容)的并集。
这打破了withDebugger和withConsoleTrace中的反射...它们无法获取底层消息的名称,因此无法显示包装的名称。
解决方法是在程序初始化管道中的withDebugger之后调用toNavigable:
Program.mkProgram init update view
#if DEBUG
|> Program.withConsoleTrace
#endif
|> Program.withReactBatched "elmish-app"
#if DEBUG
|> Program.withDebugger
#endif
|> Program.toNavigable (parseHash route) urlUpdate
|> Program.run但是,通过这样做,“更改”消息不再发送到调试器。如果您的urlUpdate函数直接更新模型状态,这可能是一个问题。对于您的urlUpdate函数来说,使用由主更新函数处理的消息引发一个新命令可能会更好。
https://stackoverflow.com/questions/54629299
复制相似问题